如何在Jquery(window).load完成后执行函数

时间:2011-03-24 07:52:14

标签: jquery load

我在iframe加载后尝试淡入div。窗口加载后调用iframe。

我可以加载iframe,但我无法弄清楚在加载完成后如何使div fadeIn 。在此先感谢您的帮助。

这是我尝试的但是html之后的加载功能没有发生

$(function() {
    $(window).load( function() {
        $("#ad").html("<iframe ... </iframe>").load(function(){
            $("#ad").fadeIn("normal");
        });
    });
});

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

默认情况下,将#ad设置为display:none;。然后尝试以下方法。

$(function() {
    $(window).load( function() {
        $("#ad").html("<iframe ... </iframe>").fadeIn("normal");       
    });
});

答案 2 :(得分:0)

您可以获取iframe窗口对象的句柄,然后检查document.readyState以查看load事件是否已经触发。如果有,它将等于“完成”。

这样的事情:

$('<iframe>').attr('src', '/pow.html').appendTo(document.body);
var win = window[window.length - 1];

var fn = function () { console.log('loaded!') };
$(win).load(fn);
if (win.document.readyState === "complete") fn();