0

我正在尝试编写一个用户脚本来隐藏页面中的某些元素。问题是元素直到页面加载几秒钟后才会出现,所以我试图延迟几秒钟。

这是我的代码:

function hide_stuff()
{
    var e = document.getElementsByClassName("tab");
    if(e) 
        alert("got elements");
    else 
        alert("didn't get elements");
    for( var i = 0; i < e.length; i++){
        if (!e[i].id)
            e[i].style.display = "hidden";
    }
}

setTimeout(hide_stuff(), 5000);

问题是它根本没有延迟。“获取元素”警报(我作为调试帮助添加)在页面加载时立即触发。我看不出我做错了什么,尽管我确信这可能是显而易见的。

有什么帮助吗?

4

1 回答 1

4

改变

setTimeout(hide_stuff(), 5000);

setTimeout(hide_stuff, 5000);

您没有传递函数,而是立即调用它(并传递undefinedsetTimeout)。

于 2013-03-28T14:57:48.203 回答