`

easyui使用tabs,在iframe中调用window,窗体不能置顶的解决办法

 
阅读更多

http://yjw0909.blog.163.com/blog/static/196130620112186371191/

 

原因是因为iframe是一个单独的网页,所以在这个网页中生成的对象不可能到iframe外面显示。

所以只能考虑讲window加载到最外层的页面中。

实现代码如下:

Js代码 复制代码 收藏代码
  1. var win = window.top.document.createElement("<div id=\"open_window"+ winid+"\" style=\"padding:0px;\"></div>");    
  2.         window.top.document.body.appendChild(win);    
  3.         window.top.$(win).window({   
  4.            title: title,   
  5.            width: width,   
  6.            modal: modal,   
  7.            shadow: false,   
  8.            closed: true,   
  9.            height: height,   
  10.            draggable:false,   
  11.            zIndex:999+nextWinId,   
  12.            inline:true,   
  13.            content:$.createFrame(url),   
  14.            onClose:function(){   
  15.                window.setTimeout(function(){$(win).window('destroy',false)},  0);   
  16.            }     
  17.         })   
  18.        window.top.$(win).window('open');   
[js] view plaincopy
 
  1. var win = window.top.document.createElement("<div id=\"open_window"+ winid+"\" style=\"padding:0px;\"></div>");   
  2.         window.top.document.body.appendChild(win);   
  3.         window.top.$(win).window({  
  4.            title: title,  
  5.            width: width,  
  6.            modal: modal,  
  7.            shadow: false,  
  8.            closed: true,  
  9.            height: height,  
  10.            draggable:false,  
  11.            zIndex:999+nextWinId,  
  12.            inline:true,  
  13.            content:$.createFrame(url),  
  14.            onClose:function(){  
  15.                window.setTimeout(function(){$(win).window('destroy',false)},  0);  
  16.            }    
  17.         })  
  18.        window.top.$(win).window('open');   

 

另一个方法在主页面建对象

Js代码 复制代码 收藏代码
  1. var win = window.top.$("<div id=\"open_window"+ winid+"\" style=\"padding:0px;\"></div>").appendTo(window.top.document.body);    
  2.   
  3. win.window({   
  4.            title: title,   
  5.            width: width,   
  6.            modal: modal,   
  7.            shadow: false,   
  8.            closed: true,   
  9.            height: height,   
  10.            zIndex:999+nextWinId,   
  11.            inline:false,   
  12.            content:$.createFrame(url),   
  13.            onClose:function(){   
  14.                window.setTimeout(function(){debugger;win.window('destroy',false)}, 0);   
  15.            }     
  16.         })   
  17.        //$('#open_window') zIndex   得改id   
  18.        //$('#open_window').appendTo('body').window('open');    
  19.        win.window('open');   
[js] view plaincopy
 
  1. var win = window.top.$("<div id=\"open_window"+ winid+"\" style=\"padding:0px;\"></div>").appendTo(window.top.document.body);   
  2.   
  3. win.window({  
  4.            title: title,  
  5.            width: width,  
  6.            modal: modal,  
  7.            shadow: false,  
  8.            closed: true,  
  9.            height: height,  
  10.            zIndex:999+nextWinId,  
  11.            inline:false,  
  12.            content:$.createFrame(url),  
  13.            onClose:function(){  
  14.                window.setTimeout(function(){debugger;win.window('destroy',false)}, 0);  
  15.            }    
  16.         })  
  17.        //$('#open_window') zIndex   得改id  
  18.        //$('#open_window').appendTo('body').window('open');   
  19.        win.window('open');   

 

另外贴一个从网上找到的获取顶级父页面对象的方法

jquery 获取顶级父页面对象出错,解决方法

代码: < table > < tr > < td >< s:include file="leftmenu.jsp" > </td> < td valign="top"> < div > </div> </tr> </table> 。。。。。。。。 以上为我的html模版,如果在 web body中使用 $("#ControlBar", top.document.body)会报错,但是 window.top.$("#ControlBar", top.document.body) 即可

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics