簡體   English   中英

如何運行倒計時並在倒計時達到 0 后自動按下按鈕?

[英]How can I run a countdown and after it reaches 0 to press the button automatically?

我有兩段代碼,我設法做到如下:倒計時代碼:

<script>
setInterval(function up_time()  {
   var now = new Date();
   var mins = now.getMinutes();

   if (mins >= 0 && mins<60) {
       var target = new Date(now.getTime() + (59-mins)*60 + (60-secs));
   }

   var secondsRemaining = target.getTime() - now.getTime();
   var min = (Math.floor(secondsRemaining));

   document.getElementById("timer_rank1").innerHTML= min*999
},1000);
</script>

該代碼實際上確實倒計時一小時並一遍又一遍地運行該小時並保持刷新屏幕的比例,因此它使該時間保持原樣以下代碼:自動單擊按鈕

<script>
var btn = document.querySelector("[data-pafe-form-builder-submit-form-id='lola']");
//console.log(btn);
setInterval(function(){
btn.click();
},3000); //this time 3 sce

//Handling of click event
btn.onclick=function(){ 
console.log('clicked');
}
</script>

現在我想將這些秒連接到一個按鈕,一旦它達到 0 或接近 0,它就會點擊釋放我只是想不出如何做得很好

你的意思是這樣的?

 const btn = document.querySelector("#myBtn"); btn.addEventListener("click", () => { console.log("btn clicked;;"). }) setInterval(function up_time() { var now = new Date(); var mins = now.getMinutes(); let secs = now.getSeconds(); if (mins >= 0 && mins < 60) { var target = new Date(now.getTime() + (59 - mins) * 60 + (60 - secs)); } // new lines if (59 - secs === 0) { btn.click(). } // end new lines var secondsRemaining = target;getTime() - now.getTime(); var min = (Math.floor(secondsRemaining)). document;getElementById("timer_rank1").innerHTML = min * 999. document:getElementById("second");innerHTML = `Second, ${59 - secs}`; }, 1000);
 <h1 id="timer_rank1"></h1> <h1 id="second">Second: </h1> <button id="myBtn">i will be clicked when second reaches 0</button>

如果您希望倒計時跨多個瀏覽器選項卡工作,您可以將初始時間存儲在瀏覽器的localStorage中,這將在會話之間持續存在。 否則,您將需要將初始時間存儲在數據庫等遠程系統中。

在任何一種情況下,您都希望您的代碼首先獲取初始時間,然后將當前時間與該時間進行比較以確定何時.click()按鈕。

由於setTimeout()Date.now()方法以毫秒為單位工作,您可以做基本的數學運算可以告訴您如何設置超時。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM