javascript - 如果复选框默认选中,setInterval 并执行某些操作,如果未选中,则 clearInterval

标签 javascript html checkbox

我正在尝试编写 javascript 代码。 如果默认选中复选框,则我必须使用 setInterval 运行计时器,如果未选中,则停止计时器,如果再次选中,则再次设置计时器。希望这是清楚的。

<input type="checkbox" id="autoupdate" checked />

<script>
    window.time = 0; //global declaration
    function autorefresh() {
        var isChecked = document.getElementById("autoupdate").checked;
        if (isChecked == true) {
            time = setInterval(function () {
               alert('hello');
            }, 5000);
        } else if (isChecked == false) {
            clearInterval(time);
        }
    }
</script>

最佳答案

你可以只监听 click 事件。

document.getElementById('autoupdate').addEventListener('click', autorefresh);

然后,您还必须在 DOM 加载后调用 autorefresh 以说明初始状态。

关于javascript - 如果复选框默认选中,setInterval 并执行某些操作,如果未选中,则 clearInterval,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24364761/

相关文章:

具有填充和边距以及 100% 宽度的 HTML CSS 框?

html - OpenCart css a.clicked 显示并消失

javascript - 复选框通过 vb.net 激活 asp.net 中的文本框

javascript - 在 dd.MM.yyyy 中格式化日期

javascript - CSS/Javascript - 按钮和链接未检测到悬停或单击?即使 z 指数最高?

javascript - Iphone 中的 jQuery mousemove()

c++ - 如何以编程方式检查表单应用程序中的所有复选框?

javascript - 将 + 转换为复选框

javascript - 根据以视口(viewport)为中心的网站移动背景

javascript - 了解 TypeScript 封装