14

可能重复:
setInterval - 如何只触发一次?

我只想运行以下代码一次,因此 2 秒后它会更改 iframe 的 src,但不会一次又一次地尝试这样做。

<script type="text/javascript">
    setInterval(function () {document.getElementById('iframe').src = "http://www.y.com";}, 2000);
    </script>
4

3 回答 3

37

您正在寻找setTimeout(),它正是这样做的。

于 2013-01-24T17:59:04.590 回答
14

是的...

window.setTimeout(function(){
        // code to run after 5 seconds...
}, 5000);

或将您的方法带到外部环境

function myMethod(){
    // code to run after 5 seconds...
};

window.setTimeout(myMethod, 5000);

如果您有一个不打算仅在超时后执行的方法,则后者很有用。

于 2013-01-24T18:09:27.487 回答
3

使用setTimeout,您可以在 Mozilla 站点中查看更多详细信息。

于 2013-01-24T18:00:45.767 回答