var mdflag;
var count = 0;
document.addEventListener("mousedown",mdown,false);
document.addEventListener("mouseup",mup,false);
}
function mdown()
{
mdflag=true;
while(mdflag)
document.getElementById("testdiv").innerHTML = count++;
}
function mup()
{
mdflag = false;
}
Sono voler eseguire codice mentre il mouse è premuto, i cant trovare qualsiasi cosa per suggerire che posso fare, mentre (mousedown) così ho provato facendo una bandiera per la mousedown che viene resettato al passaggio del mouse Tuttavia, credo che il ciclo while sia quello che mi fa andare a rimanere bloccato in un loop infinito.JavaScript mentre mousedown
Qualche consiglio per aiutare con quello che sto cercando di ottenere?
Posso chiederti perché -1 è usato come assegnato a 0? – Larry
Non sono sicuro che l'ID di 0 possa esistere e sono abituato a usare '-1' per i valori di' null'. In javascript, puoi impostare direttamente 'mousedownID = null' e chiedere a' if (mousedownID === null) '(controllando datatype con' === 'di sicuro). –
@ TomášZato Btw, non è necessario testare per 'null' prima di chiamare' clearInterval() '. Come con ['clearTimeout()'] (https://developer.mozilla.org/en-US/docs/DOM/window.clearTimeout#Notes): "* Il passaggio di un ID non valido [...] non ha effetto (e non lancia un'eccezione). * "Sebbene questi metodi non siano in realtà standardizzati, quasi tutte le implementazioni attuali lo seguono. –