jquery-ui-dialog – 在父窗口中显示jquery对话框

前端之家收集整理的这篇文章主要介绍了jquery-ui-dialog – 在父窗口中显示jquery对话框前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个使用iframe的网站. iframe本身是网站的内容.现在在iframe中我想使用jQuery对话框.但是当使用它时,覆盖和对话框只显示在不在父项上的iframe内.我的父母html为对话框定义了以下html:
<div id="modalHolder"></div>

在我的iframe中,我使用以下javascript来创建对话框并显示它.

dlg1 = $(window.parent.document.getElementById("modalHolder"));
dlg1 = dlg1.dialog({
    width: 300,height: 150,modal: true,autoOpen: false,resizable: false,cloSEOnEscape: false,draggable: false,overlay: 
    {
        backgroundColor: 'red',opacity: 0.65
    },open: function(event,ui) { $(".ui-dialog-titlebar-close").hide(); }
});

显示对话框,我用它:

dlg1.dialog('open');

解决方法

因为对话框功能在iframe的上下文中运行,所以它将始终创建对象div(像半透明背景div和对话框div)作为iframe的子对象.即使您从父文档抓取元素,实际脚本仍在iframe中运行.如果您有Firefox和Firebug,您应该可以使用HTML检查器来查看发生了什么.

我只能想到两个解决方案:

>使用jQuery对话库的修改版本.我根本不推荐这个>移动JavaScript,使其在父文档的上下文中执行.

猜你在找的jQuery相关文章