社区
Ajax
帖子详情
extjs Active遮挡用Ext.useShims=true遮挡层和原来大小不一样
telwgs
2009-11-24 03:28:06
extjs Active遮挡用Ext.useShims=true遮挡层和原来大小不一样
...全文
353
2
打赏
收藏
extjs Active遮挡用Ext.useShims=true遮挡层和原来大小不一样
extjs Active遮挡用Ext.useShims=true遮挡层和原来大小不一样
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
善良的白兰地
2011-10-12
打赏
举报
回复
终于解决了昨天碰到了菜单被applet挡住的问题,所采用的技术是Iframe Shim,参考文章是Using IFrame Shim to (partly) cover a Java applet
以下算是不断碰壁的简单总结吧,希望能对碰到类似问题的同仁有所帮助。
先说说基本Iframe Shim原理吧,我觉得是通过JavaScript动态创建iframe元素,同时设置相关的属性(比如z-index,postion等),来满足其浮动于applet或者其他插件之上。
我是用Ext做菜单的,所以采用的技术和方法都是和Ext相关,不过基本原理应该适合其他JavaScript框架的。
为此我用创建了id=inventory的Toolbar.Button组件,在其上又增加了几个Menu,现在增加代码如下:
javascript 代码
Ext.onReady(function(){
var tb = Ext.getCmp('inventory');
tb.on('menushow',function(toolbar,menu) {
var menuEl = menu.getEl();
createShim({
top:menuEl.getY(),
left:menuEl.getX(),
width:menuEl.getWidth(),
height:menuEl.getHeight()
});
});
tb.on('menuhide',function(toolbar,menu) {
var shimmer = document.getElementById('shimmer')
document.body.removeChild(shimmer);
});
});
function createShim(coordinate) {
var shimmer = document.createElement('iframe');
shimmer.id='shimmer';
shimmer.style.position='absolute';
shimmer.style.top=coordinate.top;
shimmer.style.left=coordinate.left;
shimmer.style.width=coordinate.width;
shimmer.style.height=coordinate.height;
shimmer.style.zIndex='999';
shimmer.setAttribute('frameborder','0');
shimmer.setAttribute('src','javascript:false;');
document.body.appendChild(shimmer);
}
首先在menushow事件中,动态创建shimmer,设置其position,left,top,width,height,zIndex等属性,要确保菜单的zIndex大于iframe的,还要确保iframe里边没有内容,即src应该为空。
其次在menuhide事件中移出动态创建的shimmer.
以上代码可以执行,非常感谢Ext为我们提供了便利的事件监听机制。
sean1203
2009-12-15
打赏
举报
回复
不是没人回答,只是没人知道
Ext
JS
使用之combo
本文介绍如何使用
Ext
JS
3.0创建一个包含All、
Active
和In
active
选项的ComboBox。通过具体代码示例展示了如何定义
Ext
.form.FormPanel中的ComboBox,并配置其触发动作、显示字段等属性。
Ext
Js
4 TabPanel
本文详细介绍了如何使用
Ext
JS
框架创建一个自定义Tab面板,该面板包含首页、未发通告、已发通告、未发邮件、已发邮件等选项卡,并实现了与OA办公管理桌面的联动,提供了丰富的用户体验。
关于
EXT
JS
中tabpanel的问题
本文解决
Ext
JS
中TabPanel仅能显示激活标签页组件的问题,并介绍如何通过设置layoutOnTabChange为
true
来确保所有标签页都能正确加载其内嵌组件。
EXT
JS
改变自带样式的那种风格
本文档提供了一套详细的步骤来指导如何为
Ext
JS
4.2.1创建自定义样式,包括使用SASS进行样式定制、配置全局样式变量、创建自定义组件样式等多种方法。
Ext
Js
自学教程1:一切从API开始
本文旨在引导读者从API文档入手,学习如何高效地使用
Ext
Js
框架。通过详细解析API文档结构,理解ConfigOptions、PublicProperties、PublicMethods等关键部分,以及如何灵活运用事件监听功能,读者将掌握在
Ext
Js
中快速解决问题的技巧。
Ajax
52,780
社区成员
25,334
社区内容
发帖
与我相关
我的任务
Ajax
Web 开发 Ajax
复制链接
扫一扫
分享
社区描述
Web 开发 Ajax
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章