Questo probabilmente è solo un errore di sintassi di frustrazione da parte mia. Ma resizeTime non sarà chiaro. Il timer continua a funzionare indipendentemente dall'utilizzo di clearInterval su di esso più di una volta. Qualche idea gente? Ho inviato il mio codice reale:clearInterval non funziona
var resizeTime; // declared outside of wrapper function to INSURE no second declaration will occur
var myTransitionEvent = whichTransitionEvent();
$(window).bind('adapt', function(){
console.log('start', resizeTime);
resizeTime = setInterval(function(){
console.log('go', resizeTime);
methods.relayoutChildren.apply(self);
}, 5);
setTimeout(function(){
console.log('sNend', resizeTime);
clearInterval(resizeTime);
},1000);
});
$('#allies-wrap').bind(myTransitionEvent, function(){
console.log('end', resizeTime);
clearInterval(resizeTime);
methods.relayoutChildren.apply(self);
});
Ecco un registro di esempio da Chrome:
start undefined
start 8215
(10) go 8218
start 8218
start 8221
(256) go 8224
(2) sNend 8224
(9) go 8224
sNend 8224
(3) go 8224
sNend 8224
(2596) go 8224
per coloro che non sanno di log di Chrome, (2596) significa 2596 occorrenze di un registro identico.
hai qualche errore? –
nessun errore, dal mio IDE o dal browser; tranne "vai" migliaia di volte nel registro. – Fresheyeball
Possiamo avere un esempio più dettagliato di codice che esegue il timer (il codice nel binding 'adapt' funziona perfettamente iniziando e cancellando l'intervallo http://jsfiddle.net/vHn9r/) –