首页 > 解决方案 > 加载 iframe DOM 时的事件处理程序

问题描述

我有一个 iframe,里面显示了一个独立的页面。我需要的是外部页面上的一个事件处理程序,当iframe 内部的位置/url 以某种方式发生更改时(例如单击内部页面上的链接,该链接指向另一个页面,然后再次显示在框架内)。它应该在新 DOM 加载时触发。

load()目前我根据这个堆栈溢出问题使用jQuery的函数

$("#iframe").load(function(){console.log("iframe loaded");})

这很好用,但只有在内容完全加载时才会触发,包括图像等。我正在寻找的是一个处理程序,它在只有 DOM 准备好(没有图像)时触发,就像ready()函数一样。我已经试过了

var iframe = document.getElementById('frame'),
    iframeDoc = iframe.contentDocument || iframe.contentWindow.document;
$(iframeDoc).ready(function(){console.log("iframe loaded");}

但它没有用。

有人有想法吗?

标签: javascriptjquerydomiframeevent-listener

解决方案


推荐阅读