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 < checked.length) loop(i);
}, 3000);
}(0)); //start with 0
}
}, index*3000); //loop period
Mam powyższy kod i czasami działa, czasami nie. Zastanawiam się, czy clearInterval faktycznie czyści licznik czasu ?? ponieważ istnieje ten monitor
przycisk, który będzie nieaktywny tylko wtedy, gdy jest monitoring
aktywny. Mam inny, clearInterval
gdy .outputRemove
kliknięto wywoływany element . Zobacz poniższy kod:
//remove row entry in the table
$('#status_table').on('click', '.outputRemove', function () {
deleted= true;
bigloop= window.clearInterval(bigloop);
var thistr=$(this).closest('tr');
thistr.remove();
$('#monitor').button('enable');
$('#status_table tbody tr').find('td:first').text(function(index){
return ++index;
});
});
Ale był włączony przez chwilę, zanim został ponownie wyłączony. Czy clearInterval
program wyjdzie z setInterval
funkcji?
clearloop(loopname)
która zawiera, clearInterval
ale aby ją uprościć, zmieniłem ją bezpośrednio w powyższym kodzie.
loopname
w drugim fragmencie? Co to jest?