javascript - 检测 iframe 外部的点击

标签 javascript jquery iframe

我有一个程序 (pgmA),它创建一个基本页面,左侧有 4 个垂直选项。当用户单击其中一个选项时,程序 (pgmB) 将在 iframe 中运行,从数据库中检索信息并显示一些信息以及 4 个水平选项卡。然后,用户可以单击选项卡,然后会显示一个包含更多信息的弹出窗口。要隐藏弹出窗口,用户可以单击“关闭”或 iframe (pgmB) 内的任意位置。以下代码用于当用户在 iframe (pgmB) 内单击时隐藏弹出窗口:

$(document).mouseup(function(e) {
    var cont = $('#PopUpInformation');
    if (!cont.is(e.target) &&cont.has(e.target).length === 0) {
        cont.hide();
    }
});

这部分效果很好,但我也希望用户能够单击页面上的任何位置(pgmA)来隐藏弹出窗口,这是我无法弄清楚的。帮助...

最佳答案

我认为 parent 可以实现这一点,我猜测您问题中的代码位于 <iframe/> 内。所以,你可以尝试这样的事情。

$(document).add(parent.document).mouseup(function(e) {
    var cont = $('#PopUpInformation');
    if (!cont.is(e.target) && cont.has(e.target).length === 0) {
        cont.hide();
    }
});

关于javascript - 检测 iframe 外部的点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19321835/

相关文章:

javascript - Google Analytics 如何将数据发送回 Google?

javascript - 页面加载时的 jQuery keyUp

javascript - HTML5 Ajax JQuery PHP MySQL 插入

javascript - 将复杂对象从 Angular JS 传递到 Web api 它总是返回 404

javascript - Spring 安全: dot in username on jsp page

javascript - $.ajax() 不提供从静态 json 文件获取 json 的请求

javascript - jQuery:如何查找具有特定 id 的 li 标签

iframe - 使用 &lt;iframe&gt; 作为 clmtrackr 的源

javascript - 如果在 iframe 中,则以不同方式显示页面 (css)

javascript - 从两级深度 iframe 获取浏览器 URL