你能停止window.onload功能吗?

时间:2015-04-02 09:17:47

标签: javascript click onload skip

我实施了由window.onload

触发的连续淡入淡出

我想知道我是否可以阻止它在中途执行或在当前任何地方执行,并使用...style.display = "inline-block";一次性显示所有将要消失的内容。

1 个答案:

答案 0 :(得分:2)

如果您已经使用过,

function init()
{
}
window.onload = init;

停止它!
该行代码将完全消除已附加并准备好处理onload事件的任何其他函数。你的剧本多么傲慢! ;)

相反,你的脚本应该学会很好地发挥。遗憾的是,JavaScript不支持C#具有的委托语法 是的,有办法实现这一目标:

第一种方式:

function highlightXFNLinks()
{
  // Does stuff...
}

//
// Adds event to window.onload without overwriting currently 
// assigned onload functions.
function addLoadEvent(func)
{    
    var oldonload = window.onload;
    if (typeof window.onload != 'function')
    {
        window.onload = func;
    } 
    else 
    {
        window.onload = function()
        {
            oldonload();
            func();
        }
    }
}

addLoadEvent(highlightXFNLinks);

window.onload += init;

第二种方式:

比第一个更好......

function AddOnload(myfunc)
{
    if(window.addEventListener)
        window.addEventListener('load', myfunc, false);
    else if(window.attachEvent)
        window.attachEvent('onload', myfunc);
}