写页面的时候 先用html定义好form 然后将其输入框用textfield combobox进行转换,再在viewport中子项用contentEl指定html的id。
代码不能贴出来,有这样问题的人会知道我说什么的。
在ie6下打开这样的页面 页面会出现闪动。
翻看api 有对
contentEl描述
contentEl : String
(可选)指定一个已存在的HTML元素,或者一个已存在HTML元素的...
(可选)指定一个已存在的HTML元素,或者一个已存在HTML元素的 id ,它们将被用作当前组件的内容。
描述 :
此配置选项被用来将一个已存在的HTML元素 插入到一个新组件(在组件渲染之后它简单地移动DOM元素) 的layout元素中,使它成为该组件的内容。
注意 :
指定的HTML元素将被append到组件的layout元素中, 在所有配置的 HTML 被插入之后, 并且,这样的话,在render事件 被触发时,document中将不再包含此元素。
指定的HTML元素将不会参与组件所有可能使用的 layout 过程(译者注:指这些HTML元素 不会参与布局操作)。 它仅是HTML而已。布局操作实在孩子 items 上进行的。
添加 x-hidden 或者 x-hide-display CSS类,以防在内容渲染到panel时发生闪烁。
大概意思就是 先把html隐藏 然后在组件渲染完成之后再将其显示 这样就避免了闪动。
ie会先显示html 然后执行js 而extjs在applyTo或者transform完成之后 把html的dom删除
所在html的标签中加class=“x-hidden” 将其设为不可见。不建议用“x-hide-display“这样会出现莫名其妙的布局问题。
然后在Ext.onReady()中 将其document.getElementById(”id“).className=""; 这样问题就解决了
或者在EXT相应的组件加个render事件 执行show();方法