Подскажите как грамотно прекратить и возобновить setInterval?
Добрый день. Допустим есть функция которая запускается после загрузки страницы:
<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<button onclick="test ()">Вызов функции</button>
<div id="hello"></div>
<script type="text/javascript">
$(document).ready(function(){
test ();
});
function test (){
var data = 'привет';
consol(data);
}
function consol(data){
$("#hello").append(data+' ');
setTimeout(function() {
consol(data);
}, 2000);
}
</script>
Внутри функции работает setTomeout, и если вызвать первую функцию как то еще, она дублируется. Сам вопрос, как вызвав эту функцию например с кнопки, чтобы обновление старой функции прекратилось? Чтобы обновлялась только последняя вызванная функция.:-? |
Цитата:
Цитата:
|
Цитата:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='https://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
test('One');
});
function test (data){
consol(data);
}
function consol(data){
if (consol.id!==undefined) {
clearTimeout(consol.id);
};
$("#hello").text(data+' '+new Date());
consol.id=setTimeout(function() {
consol(data);
}, 2000);
}
</script>
</head>
<body>
<button onclick="test('Two')">Вызов функции</button>
<div id="hello"></div>
</body>
</html>
|
ksa,
Заработало =)) спасибо, это чудо прям какое то=)) |
| Часовой пояс GMT +3, время: 02:52. |