2012-11-14 5 views
0

Можно создать дубликат:
How to clearInterval with unknown ID?Javascript - Start/Stop setInterval автоматически

я в настоящее время начинают серию setIntervals(function(), time) снаружи функций в части моего заголовка страницы.

Теперь мне нужна возможность остановить и запустить эти глобальные setIntervals изнутри функции. Есть много вопросов, которые делают это с использованием пользователя, но мне нужен сценарий, чтобы сделать это автоматически. По существу, когда запускается функция initialInterval, она отключит будущие стрельбы, пока пользователь не подтвердит это.

Каков наилучший способ для этого.

JQuery является приемлемым или даже предпочтительным.

+0

Пожалуйста, пост код, который вы имеете –

+0

я уверен, что если вы внимательно прочитать другие вопросы/ответы, которые уже существуют в этой теме , вы можете понять это. Нет большой разницы в остановке 'setInterval' при нажатии кнопки или« автоматически »в обоих случаях, когда вы в конечном итоге вызываете ту же функцию (' clearInterval'). –

+0

[Этот ответ] (http://stackoverflow.com/a/7663883/447356) выглядит наиболее подходящим для вас. –

ответ

2

Вам необходимо присвоить интервал переменной, а затем использовать функцию clearInterval, чтобы остановить ее. https://developer.mozilla.org/en-US/docs/DOM/window.clearInterval

var interval = setInterval(function(), time) 
clearInterval(interval) 
+0

Вы не имели в виду 'setInterval'? – loxxy

+0

Да, я сделал :) спасибо, приятно поймать. – roacher

1

Я использую что-то вроде этого:

var timers = []; 

var timer = function (code, delay) { 

    var id = "timer" + timers.length; 

    timers.push({ id : id, ref : setInterval(code, delay)}); 
} 

new timer(function(e) { alert("I'm first timer!");}, 1000);     

​ 
0
<input type="button" value="click me" onClick="disableInterval()"/> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     var intervalID = setInterval(yourFunction(), time); 
    }); 
disableInterval = function(){ 
window.clearInterval(intervalID); 
} 
</script> 
Смежные вопросы