在加载时运行一个函数,然后每10分钟运行一次

Nik*_*266 4 javascript

有没有办法在页面加载时执行javascript函数,然后再不再执行10分钟.即使用户浏览另一个页面?如果他们不希望功能再次运行,直到10分钟结束?

Jed*_*iah 9

只需创建要执行onload的函数,在DOM就绪时调用一次,然后使用setTimeout()

<script type="text/javascript">
    function doSomething() {
        alert("Doing something here");
    }
    window.onload = function () {
        doSomething(); //Make sure the function fires as soon as the page is loaded
        setTimeout(doSomething, 600000); //Then set it to run again after ten minutes
    }
</script>
Run Code Online (Sandbox Code Playgroud)

编辑:即使他们在另一页上,也没有注意到该部分.如果它是您网站上的另一个页面,您可以在页面加载后设置cookie,并包含设置cookie时的时间戳.在其余页面的window.onload中,您可以读取该时间戳,并计算是否已经过了10分钟.如果有,请再次调用该功能.

编辑:10分钟是600000毫秒


Pek*_*ica 3

即使用户浏览到另一个页面?

没有。一旦您的页面关闭,您就无法再控制会发生什么。