iframe的`complete`属性

时间:2013-10-16 16:14:55

标签: javascript jquery html iframe

似乎<iframe>没有像complete这样的<img>属性。因此,似乎iframe无法与onload一起使用。对于<img>,我可以这样做:

$("img").on("load", loadFunc).each(function () {
    if (this.complete) {
        this.trigger("load");
    }
});

但是,如果您将<img>替换为<iframe>,则此功能不会始终如一。没有任何迹象表明<iframe>具有complete属性,因此我不希望这样做。

当iframe的内容可用时,有没有办法可靠地确定iframe何时加载或以其他方式触发事件?

3 个答案:

答案 0 :(得分:3)

你可以试试这个:

$('#iframeid').ready(function () {
    //On Load Complete Code.
});

编辑:

没有注意到你想要iframe标签本身,而不是id。但它似乎仍然有用。

以下是一个示例:http://jsfiddle.net/tFhhH/

答案 1 :(得分:0)

一个想法可能是处理iframe的load事件并将变量设置为true并调用该事件。然后你只需要检查那个变量,看看是否加载了iframe。

答案 2 :(得分:0)

$("#iframeid").load(function (){
// At this point the iframe window is fully loaded
// no need to check for an additional "complete" state
});
另一方面,

$().ready会告诉您DOM何时完全加载。这可能发生在onload事件之前。