2009-06-24 11 views
1

私のウィンドウがレンダリングされない理由を教えてください。以下は、私が使用しているjavascriptですExtJsウィンドウがレンダリングされない

<link href="/Scripts/ext/resources/css/ext-all.css" rel="stylesheet" type="text/css"/> 

    <script src="/Scripts/jquery/jquery-1.3.2.min.js" type="text/javascript"></script> 
    <script src="/Scripts/ext/adapter/jquery/ext-jquery-adapter.js" type="text/javascript"></script> 
    <script src="/Scripts/ext/ext-all.js" type="text/javascript"></script> 




    <script type="text/javascript"> 
     $(function() { 
      var viewport = new Ext.Viewport({ 
       items:[[ 
    { 
    "minimizable": true, 
    "maximizable": true, 
    "title": "Hello World", 
    "height": 300, 
    "width": 400, 
    "xtype": "window" 
    } 
]] 
      }); 
     }); 
    </script> 

答えて

3

なぜあなたはそのようなビューポートの項目としてウィンドウを作成しますか?あなたはそれをしません。

の操作を行います。

Ext.onReady(function() { 

var win = new Ext.Window({ 
    minimizable: true, 
    maximizable: true, 
    title: "Hello World", 
    height: 300, 
    width: 400 
}); 

win.show(); 

}); 
+0

私はextjsが暗黙のレンダリングをサポートしていると思っていましたが(xtypesを使用していますか?) –

+0

そのような場合ですが、ウィンドウはアイテムとして使用されるはずではなく、ビューポートのアイテムはパネルのように – Lloyd

+1

なぜこのように扱われているのですか:(これは迷惑です:( –

1

私は上記のコメントをするのに十分な評判を持っていないが、ロイドは100%正しいです。 Windowsはレイアウトの上に浮動(位置:絶対)しますが、コンポーネントアイテムはレイアウトをネストされた親/子ノード構造としてレンダリングされます。レンダリングされたウィンドウのマークアップを見ると、ドキュメントボディレベルで作成されます。レイアウトパネルとの関係はありません。

それは命名の混乱かもしれ - ロイドが言ったように、パネルは、あなたが実際に何をしたいです(そしてあなたは、ビューポートに項目を追加するときにデフォルトで作成されるものです)。パネルはウィンドウのように機能しますが、その上に浮動するのではなくレイアウト構造に組み込まれています。本当にウィンドウが必要な場合は、Lloydのコードを使用してください。

関連する問題