2009-06-24 125 views
1

请告诉我为什么我的窗口不呈现。以下是我正在使用的JavaScriptExtJs窗口不显示

<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。是不是这种情况? – 2009-06-24 10:20:24

1

我没有足够的声誉上面发表评论,但劳埃德是100%正确的。 Windows在布局上方浮动(位置:绝对),而组件项目作为嵌套的父/子节点结构呈现在布局中。如果您查看渲染窗口的标记,它将在文档主体级别创建 - 它与任何布局面板之间没有关系。

这可能是命名的混淆 - 正如劳埃德所说,Panel实际上是你想要的(当你将一个项目添加到视口时默认创建的)。面板的功能与Windows非常相似,但是它们被嵌入到布局结构中,而不是在其上方浮动。如果你真的想要一个窗口,那么使用劳埃德的代码。