http://yjw0909.blog.163.com/blog/static/196130620112186371191/
?
原因是因为iframe是一个单独的网页,所以在这个网页中生成的对象不可能到iframe外面显示。
所以只能考虑讲window加载到最外层的页面中。
实现代码如下:
var win = window.top.document.createElement("<div id=\"open_window"+ winid+"\" style=\"padding:0px;\"></div>"); window.top.document.body.appendChild(win); window.top.$(win).window({ title: title, width: width, modal: modal, shadow: false, closed: true, height: height, draggable:false, zIndex:999+nextWinId, inline:true, content:$.createFrame(url), onClose:function(){ window.setTimeout(function(){$(win).window('destroy',false)}, 0); } }) window.top.$(win).window('open');
?
另一个方法在主页面建对象
var win = window.top.$("<div id=\"open_window"+ winid+"\" style=\"padding:0px;\"></div>").appendTo(window.top.document.body); win.window({ title: title, width: width, modal: modal, shadow: false, closed: true, height: height, zIndex:999+nextWinId, inline:false, content:$.createFrame(url), onClose:function(){ window.setTimeout(function(){debugger;win.window('destroy',false)}, 0); } }) //$('#open_window') zIndex 得改id //$('#open_window').appendTo('body').window('open'); 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) 即可