停止定时器JavaScript



如果页面上显示div错误div,我将尝试停止计时器。这是代码。我不知道clearTimeOut为什么不停止计时器。

<script type="text/javascript">

function timeOutRedirect(){

var delay = 60000; // time in milliseconds
// Show message div
document.getElementById("message").style.display = "block";
// Display message
document.getElementById("message").innerHTML = "<h1>Your order is being processed.</h1>";
setTimeout(function(){
if( document.getElementsByClassName('woocommerce-NoticeGroup-checkout').length != 0 ){
// If error div is loaded
delay = clearTimeout(); //this is n0t clearing timer
document.getElementById("message").style.display = "none";
console.log('error notice div loaded');
} else {
window.location = "/processing-information/";
}
},delay);
}
</script>
<!-- Time out double order timer -->
<div id="message" style="background: #a1f5b9; margin: 10px 0; padding: 10px; text-align: center; display: none; z-index: 99999;"></div>

如果有间隔,可以使用clearInterval((方法。

const handle = setInterval(function(){...},delay);
...
// Cancel the interval
clearInterval(handle)

对于计时器,可以使用clearTimeout((方法。

const handle = setTimeout(function(){...},delay);
...
// Cancel the timer
clearTimeout(handle)

请参阅https://www.w3schools.com/jsref/met_win_cleartimeout.asp

也许您可以使用例如:

countTime=SetInterval(((=>console.log("测试"(,1000(;clearInterval(countTime(;

通过这种方式,您可以在调用方法clearInterval时操作变量countTime以停止。

相关内容

  • 没有找到相关文章

最新更新