【问题标题】:How to have jQuery refer to a newly popped up window?如何让 jQuery 引用新弹出的窗口?
【发布时间】:2010-11-08 06:40:23
【问题描述】:

在django函数showRelatedObjectLookupPopup中,我想在新弹出的窗口中给一个按钮绑定一个函数,但是不知道如何引用新窗口。这是我尝试过的:

function showRelatedObjectLookupPopup(triggeringLink) {
// other function stuff omitted
    var name = triggeringLink.id.replace(/^lookup_/, '');
    name = id_to_windowname(name);
    var win = window.open(href, name, 500, 700, resizable=yes, scrollbars=yes');

    win.onload = function () {
         $(document).ready(function() {
               $("input.default").hover(function () {alert('hovered')})})};
    win.focus();
    return false;
}

但这会绑定到原始窗口中的按钮。

【问题讨论】:

  • 应该(如,未经我测试)能够使用 $(win.document).ready(function(){ ... });,而不是将匿名函数分配给 win.onload。 $(document).ready() 是作为 onload() 的替代品而创建的,但我不确定它在其他窗口中的效果如何。

标签: javascript jquery django


【解决方案1】:

我认为您在使用时指的是当前窗口的文档

win.onload = function() { $(document).ready(...

试试这个:

win.onload = function() { $(win.document).ready(...

同样,为您的输入选择器提供上下文:

 $("input.default", win.document).hover(...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-12
    • 2012-10-23
    • 2016-01-14
    • 2021-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-28
    相关资源
    最近更新 更多