javascript – 使用.live()进行iFrame.load()事件?

我知道我的页面中的某个地方通过
javascript将iFrame添加到我的页面中,我想在加载时收到通知,但这不起作用:

$("iframe").live("load",
    function () {
        alert(this.name + ": Im loaded!");
    });

没有显示警报
知道为什么吗?任何想法我们怎样才能做到这一点?

最佳答案 我认为您可以在将iframe添加到页面后进行回调.


here所述,不可能将live()绑定到iframe load().

Note: The .live() and .delegate() methods cannot be used to detect the
load event of an iframe. The load event does not correctly bubble up
the parent document and the event.target isn’t set by Firefox, IE9 or
Chrome, which is required to do event delegation.

所以在你的回调中,你必须调用它,可能设置一个超时,以确保它在iframe加载后触发.

$("iframe").load(function () {
    alert(this.name + ": Im loaded!");
});
点赞