คำถามติดแท็ก setinterval

setInterval เป็นวิธีการของ JavaScript ทั่วโลก มันถูกใช้เพื่อเรียกใช้ฟังก์ชันเฉพาะหรือชิ้นส่วนของรหัสในช่วงเวลาปกติ

13
หยุด setInterval โทรใน JavaScript
ฉันใช้setInterval(fname, 10000);เพื่อเรียกใช้ฟังก์ชันทุก ๆ 10 วินาทีใน JavaScript เป็นไปได้หรือไม่ที่จะหยุดเรียกมันในบางเหตุการณ์? ฉันต้องการให้ผู้ใช้สามารถหยุดการรีเฟรชข้อมูลซ้ำได้

18
setTimeout หรือ setInterval
เท่าที่ฉันสามารถบอกได้จาวาสคริปต์ทั้งสองชิ้นนี้มีวิธีการทำงานแบบเดียวกัน: ตัวเลือก A: function myTimeoutFunction() { doStuff(); setTimeout(myTimeoutFunction, 1000); } myTimeoutFunction(); ตัวเลือก B: function myTimeoutFunction() { doStuff(); } myTimeoutFunction(); setInterval(myTimeoutFunction, 1000); มีความแตกต่างระหว่างการใช้setTimeoutและsetIntervalหรือไม่?



12
เรียกใช้ฟังก์ชันทุก 60 วินาที
การใช้setTimeout()มันเป็นไปได้ที่จะเปิดตัวฟังก์ชั่นในเวลาที่กำหนด: setTimeout(function, 60000); แต่ถ้าฉันต้องการเปิดฟังก์ชั่นหลาย ๆ ครั้งล่ะ? ทุกครั้งที่ช่วงเวลาผ่านไปฉันต้องการเรียกใช้ฟังก์ชัน (ทุก ๆ 60 วินาทีสมมติว่า)

13
ฉันจะทำให้ setInterval ทำงานได้อย่างไรเมื่อแท็บไม่ทำงานใน Chrome
ฉันมีsetIntervalรหัสส่วนหนึ่งวิ่ง 30 ครั้งต่อวินาที สิ่งนี้ใช้งานได้ดี แต่เมื่อฉันเลือกแท็บอื่น (เพื่อให้แท็บที่มีรหัสของฉันไม่ทำงาน) การsetIntervalตั้งค่าเป็นสถานะไม่ได้ใช้งานด้วยเหตุผลบางประการ ฉันทำกรณีทดสอบง่าย ๆ นี้ ( http://jsfiddle.net/7f6DX/3/ ): var $div = $('div'); var a = 0; setInterval(function() { a++; $div.css("left", a) }, 1000 / 30); หากคุณเรียกใช้รหัสนี้จากนั้นสลับไปยังแท็บอื่นให้รอสักครู่แล้วย้อนกลับไปภาพเคลื่อนไหวจะดำเนินต่อไปตามขั้นตอนเดิมเมื่อคุณเปลี่ยนไปใช้แท็บอื่น ดังนั้นภาพเคลื่อนไหวจะไม่ทำงาน 30 ครั้งต่อวินาทีในกรณีที่แท็บไม่ทำงาน สิ่งนี้สามารถยืนยันได้โดยนับจำนวนครั้งที่setIntervalเรียกใช้ฟังก์ชันในแต่ละวินาทีซึ่งจะไม่เท่ากับ 30 แต่จะมีเพียง 1 หรือ 2 หากแท็บไม่ทำงาน ฉันเดาว่าสิ่งนี้ทำโดยการออกแบบเพื่อปรับปรุงประสิทธิภาพ แต่มีวิธีใดที่จะปิดการทำงานนี้หรือไม่ จริง ๆ แล้วมันเป็นข้อเสียในสถานการณ์ของฉัน

15
เปลี่ยนช่วงเวลาของ SetInterval ขณะที่กำลังทำงาน
ฉันได้เขียนฟังก์ชันจาวาสคริปต์ที่ใช้ setInterval เพื่อจัดการสตริงทุก ๆ สิบวินาทีสำหรับการวนซ้ำจำนวนหนึ่ง function timer() { var section = document.getElementById('txt').value; var len = section.length; var rands = new Array(); for (i=0; i<len; i++) { rands.push(Math.floor(Math.random()*len)); }; var counter = 0 var interval = setInterval(function() { var letters = section.split(''); for (j=0; j < len; j++) { if (counter …

12
รหัสสำหรับตัวนับถอยหลัง JavaScript อย่างง่าย?
ฉันต้องการใช้ตัวจับเวลานับถอยหลังอย่างง่ายเริ่มต้นที่ 30 วินาทีจากเมื่อฟังก์ชั่นทำงานและสิ้นสุดที่ 0 ไม่มีมิลลิวินาที มันจะถูกเข้ารหัสได้อย่างไร?

1
clearInterval () สามารถเรียกภายใน setInterval () ได้หรือไม่
bigloop=setInterval(function () { var checked = $('#status_table tr [id^="monitor_"]:checked'); if (checked.index()===-1 ||checked.length===0 || ){ bigloop=clearInterval(bigloop); $('#monitor').button('enable'); }else{ (function loop(i) { //monitor element at index i monitoring($(checked[i]).parents('tr')); //delay of 3 seconds setTimeout(function () { //when incremented i is less than the number of rows, call loop for next index if (++i …

6
หยุด setInterval
ฉันต้องการหยุดช่วงเวลานี้ในerrorตัวจัดการไม่ให้ทำงานซ้ำ ๆ เป็นไปได้หรือไม่และถ้าเป็นเช่นนั้นได้อย่างไร // example code $(document).on('ready',function(){ setInterval(updateDiv,3000); }); function updateDiv(){ $.ajax({ url: 'getContent.php', success: function(data){ $('.square').html(data); }, error: function(){ $.playSound('oneday.wav'); $('.square').html('<span style="color:red">Connection problems</span>'); // I want to stop it here } }); }

6
ทำบางสิ่งทุกๆ x นาทีใน Swift
ฉันจะเรียกใช้ฟังก์ชันทุกนาทีได้อย่างไร? ใน JavaScript ฉันสามารถทำสิ่งต่างๆเช่นsetIntervalมีสิ่งที่คล้ายกันใน Swift หรือไม่ ผลลัพธ์ที่ต้องการ: Hello World นาทีละครั้ง ...

12
วิธีทำให้ "setInterval" ทำงานในการซิงค์มากขึ้นหรือจะใช้ "setTimeout" แทนได้อย่างไร
ฉันกำลังทำงานกับโปรแกรมเพลงที่ต้องใช้องค์ประกอบ JavaScript หลายตัวเพื่อซิงค์กับรายการอื่น ฉันใช้อยู่setIntervalซึ่งใช้งานได้ดีในตอนแรก อย่างไรก็ตามเมื่อเวลาผ่านไปองค์ประกอบต่างๆก็ค่อยๆไม่ตรงกันซึ่งไม่ดีในรายการเพลง ฉันอ่านออนไลน์ที่setTimeoutถูกต้องกว่าและคุณสามารถมีsetTimeoutลูปได้ อย่างไรก็ตามฉันไม่พบเวอร์ชันทั่วไปที่แสดงให้เห็นว่าสิ่งนี้เป็นไปได้อย่างไร โดยทั่วไปฉันมีฟังก์ชั่นบางอย่างเช่นนี้: //drums setInterval(function { //code for the drums playing goes here }, 8000); //chords setInterval(function { //code for the chords playing goes here }, 1000); //bass setInterval(function { //code for the bass playing goes here }, 500); มันทำงานซุปเปอร์ดี แต่แรก setIntervalแต่ในช่วงประมาณนาทีที่เสียงกลายเป็นเห็นได้ชัดออกจากซิงค์เป็นฉันได้อ่านที่เกิดขึ้นกับ ฉันอ่านแล้วว่าsetTimeoutสามารถแม่นยำมากขึ้นอย่างต่อเนื่อง ใครช่วยแสดงตัวอย่างพื้นฐานของการใช้setTimeoutวนซ้ำไปเรื่อย ๆ …

6
กำลังดูการหมดเวลา / ช่วงเวลาทั้งหมดในจาวาสคริปต์หรือไม่
ฉันกำลังเขียนแอปพลิเคชันที่ใช้การหมดเวลาและช่วงเวลาของ JavaScript ในการอัปเดตเพจ มีวิธีดูว่ามีการตั้งค่ากี่ช่วงเวลาหรือไม่? ฉันต้องการให้แน่ใจว่าฉันจะไม่ฆ่าเบราว์เซอร์โดยไม่ได้ตั้งใจด้วยการตั้งค่าช่วงเวลาหลายร้อยครั้ง นี่เป็นปัญหาหรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.