Ext.window把mask加到父窗口上
来源:互联网 发布:c语言string什么意思 编辑:程序博客网 时间:2024/05/20 21:45
Extjs 3.3.1
有这样一个场景: 页面A 有一个iframe, 这个iframe 的src 是页面B.
|------------------- |
| 页面A |
| __________ |
| | iframe | |
| | 页面B | |
| ---------------- |
---------------------
页面B 有段js脚本, 作用是弹出一个Ext.window, 这里称为winB, 一般是
var winB = new Ext.Window({
...............//属性设置
renderTo: Ext.getBody(), //这个自己查就知道了
modal:true, //遮罩层, 其实就是启用一个mask(马赛克, 万恶的马赛克)
..............................
});
winB.show();
这段js 脚本执行后, 效果出现了: 在iframe 里面出了一个模式窗口, 并且这个窗口下面有个遮罩层, 把iframe 罩住了.
这个很简单的, 但是现在有个问题出现了, 我要连页面A 也罩住.
刚开始的想法是: 调用一个mask 罩住页面A, 在适当的时候取消这个 mask.
parent.getBody().mask();
parent.getBody().unmask();
需要的效果达到了, 确实可以罩住页面A, 但是连 winB 也给罩住了, 这可不是我所希望的, 尝试了一些方法, 试着把 winB 搞到mask 罩前面, 都失败了.
网上查了一下, 可以用 parent.Ext.Window, 原来的js 脚本改一下.
var winB = new parent.Ext.Window({
...............//属性设置
renderTo:parent.Ext.getBody(), //这个自己查就知道了
modal:true, //遮罩层, 其实就是启用一个mask(马赛克, 万恶的马赛克)
..............................
});
winB.show();
还真的搞定了.
我们的js 脚本是在页面B 上的, 页面B 的 parent 就是 页面A 的window 了.
这里就可以知道了, 现在的 winB 是页面A 的模式窗口对象了, 所以这里还有一个要求, 页面A 必须加入 Extjs 3.3.1 必要的库
<link rel="stylesheet" type="text/css" href="../../resources/css/ext-all.css" />
<script type="text/javascript" src="../../adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="../../ext-all.js"></script>
还有一点要注意的, 如果js 脚本中有 applyTo: 'hello-tabs' (hello-tabs 是一个div 的id) 之类的代码, 请修改一下,
如 var helloTabs = Ext.get('hello-tabs');
再把 applyTo: 'hello-tabs' 改为 applyTo:helloTabs;
如果不修改, 在IE6(其他IE版本不清楚) 下, 会报"参数错误" 的异常信息, 估计是IE6 把作用域混淆了.
在FireFox 4(其他版本没测试) 下就没问题, 网景为什么当年输给微软, 唉!!!
从以前到现在, 刚好用了Extjs 4天, 所以很多都不懂, 可能有更好的解决方法是我所不知道的.
ps. 本人博客没啥人气, 希望得到帮助的童鞋能帮忙顶一下, 大家互相学习!
- Ext.window把mask加到父窗口上
- Ext.window把mask加到父窗口上
- ext window窗口
- Extjs-弹出窗口 Ext.Window
- EXT弹出Window窗口被flash遮盖
- Ext.Window html iframe 关闭父窗口
- EXTJS 窗口Ext.Window()学习笔记
- 视图Ext.Viewport和窗口Ext.Window用法
- 视图Ext.Viewport和窗口Ext.Window用法 1
- 视图Ext.Viewport和窗口Ext.Window用法
- 视图Ext.Viewport和窗口Ext.Window用法
- 视图Ext.Viewport和窗口Ext.Window用法
- 视图Ext.Viewport和窗口Ext.Window用法
- Ext.Panel 面板控件、 Ext.window.Window 窗口控件、 Ext.container.Viewport 布局控件
- ext使用问题二:把formpanel嵌入window中
- ExtJs4 笔记(9) Ext.Panel 面板控件、 Ext.window.Window 窗口控件、 Ext.container.Viewport 布局控件
- ExtJs4 笔记(9) Ext.Panel 面板控件、 Ext.window.Window 窗口控件、 Ext.container.Viewport 布局控件
- ExtJs4 笔记(9) Ext.Panel 面板控件、 Ext.window.Window 窗口控件、 Ext.container.Viewport 布局控件
- 夜间的胡思乱想
- winform与javascript
- C++ - 常量成员函数的含义
- c++ - 编译器会在类中放东西 & 使用抽象数据
- 软件架构师应该知道的97件事 笔记(二)
- Ext.window把mask加到父窗口上
- Flex改变图片或控件的层次关系
- 关于Ubuntu 10.04下编译BlueZ错误
- 终于可以不用radmin了
- 人们对IPv6的两大误解
- DAPM之二:audio paths与dapm kcontrol
- PC/UVa 111003/10278 Fire Station
- 用vim比较文件(Using vim to compare files)
- Android学习讲义各大学全收录系列下载列表