javascript - 在执行时重置 Javascript 中的变量?

标签 javascript jquery html

我正在使用此功能在 15 秒后自动单击按钮。问题是用户在选项运行后不会离开页面,并且可能会在同一页面上再次重新运行,但计时器仍在继续。事实上,即使我自己执行该操作,计时器也会继续。

<script type="text/javascript">
time = 15;
interval = setInterval(function() {
  time--;
    document.getElementById('Label1').innerHTML = "You must choose in " + time + " seconds"
    if (time == 0) {
        // stop timer
        clearInterval(interval);
        // click
        document.getElementById('thebutton').click();       
    }
}, 1000)

</script>

所以这个脚本应该运行计时器并在十五秒内“按下”“按钮”,然后计时器应该停止计数并重置,直到再次运行。如果在 15 秒之前手动按下按钮,它仍应重置。

<input type='submit' id='thebutton' value='Done'></input>

希望这一点是清楚的。我还是个新手,还在学习中。

最佳答案

设置基准时间,然后将其重置为该基准时间。

<script type="text/javascript">
time = 15;
baseTime = 15;
interval = setInterval(function() {
  time--;
    document.getElementById('Label1').innerHTML = "You must choose in " + time + " seconds"
    if (time == 0) {
        // stop timer
        clearInterval(interval);
        // click
        document.getElementById('thebutton').click(); 
        time = baseTime;
        return false;


    }
}, 1000)

</script>

关于javascript - 在执行时重置 Javascript 中的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45250292/

相关文章:

javascript - PHP:如何在 php 中使用 GET 将值存储到数组

javascript - 如何添加多个选择选项

javascript - 从 javascript 构建 AngularJS 的 ng-pattern

javascript - 将 JavaScript 中的变量传递给 open.window

jquery - 使用 jQuery 旋转切换图像

javascript - 仅当最小宽度为 800px 时才执行 Javascript

javascript - 顶部栏覆盖网页标题

javascript - 在标点符号前动态添加<wbr>标签

javascript - Window.onblur - 禁用 iframe 事件

html - 为 ul-navigation 添加标题