切换按钮以开始/停止刷新我的页面

时间:2018-06-20 16:30:16

标签: javascript jquery html

我正在尝试使用某种切换按钮来启动和停止页面刷新,但是由于某种原因,停止过程无法正常工作。我的逻辑正确吗?

这是我的代码:

<button id = "toggleButton" onclick = "initRefresh()" >  Stop Refresh </button>

    <script>
    function reloadUrl() {
        window.location.replace(
            [location.protocol, '//', location.host, location.pathname].join('')
        );

    }


    function initRefresh() {
        if ($('#toggleButton').text() == 'Start Refresh') {
            $('#toggleButton').text("Stop Refresh");
            t = window.setTimeout(reloadUrl, 45000);
        } else {
            $('#toggleButton').text("Start Refresh");
            clearTimeout(t);
        }
    };

    var t = window.setTimeout(reloadUrl, 45000); 

</script>

默认选项(首次加载)处于启用状态。因此,当用户在45秒后首次进入该页面时,页面将刷新。

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

我相信问题来自t变量的初始化。 页面加载时,您将启动setTimeout。

将其更改为var t = null,上面的代码应该可以使用。

答案 1 :(得分:0)

您的代码(有问题)正在100%有效。

但是如果将代码放在$(document).ready事件中,则将无法正常工作。