我如何在jquery中编写这段代码?

时间:2011-01-12 12:45:33

标签: jquery

如何在Jquery中编写这段javascript代码

<script>
function init() {                

    alert('hi: ');
}

var previousOnload = window.onload;        
window.onload = function() { 
    if (previousOnload) { 
        previousOnload();
    }

    init();
}
</script>

3 个答案:

答案 0 :(得分:1)

使用jQuery,您不必“记住”以前的onload,窗口onload和jQuery onload都将运行:

<script type="text/javascript">
    window.onload = function() {
        WriteLine("window onload");
    };

    $(function() {
        WriteLine("jQuery onload");
    });

    function WriteLine(msg) {
        alert(msg);
    }
</script>

实时测试案例:http://jsfiddle.net/SXQmT/

答案 1 :(得分:1)

我会做以下事情:

function LoadEvent(Func)
{
    var OldOnLoad = window.onload;
    if (typeof OldOnLoad != 'function')
    {
        window.onload = Func;
    }else{
        window.onload = function()
        {
            OldOnLoad();
            Func();
        }
    }
}

然后像这样使用:

LoadEvent(Init);

答案 2 :(得分:1)

$(window).load(init)会做同样的事情。但没有让previousOnload混乱的事情。它会记住以前的onload,并在页面完全加载时调用它们。