Instrument de dresaj pentru câini de auz - setTimeout ()
Într-un articol anterior, am început dezvoltarea iterativă a unui mic program JavaScript pentru a ajuta la antrenarea unui câine pentru a efectua alerte sonore. Până acum, programul, pe care îl puteți vizualiza aici, include un buton de alarmă setat, care, atunci când este apăsat, apare o alertă care afirmă că alarma a dispărut (deși alarma sonoră nu este încă configurată.) Ca pas următor, urmează să setați efectiv așteptarea între apăsarea butonului „setare alarmă” și alarma, așa cum este ea, oprire.

JavaScript și Document Object Model (DOM), au o mulțime de manageri de evenimente care așteaptă să se întâmple ceva (adică. onClick, onMouseOver, ...); cu toate acestea, în acest caz, dorim să așteptăm o perioadă de timp, DOM oferă și o metodă pentru a face acest lucru setTimeout (). setTimeout () necesită două argumente, o bucată de cod sau o funcție de executat și timpul de așteptare în milisecunde înainte de a-l rula. set_timeout () poate, de asemenea, să ia o a treia opțiune opțională care desemnează limbajul de script utilizat - JavaScript, JScript sau VBScript (aceasta face parte din DOM, nu JavaScript, nu uitați.)

Noul nostru cod arată ca următorul:


function do_alarm () {
// determină timpul de așteptare în câteva secunde
wait_secs = 52; // deocamdată, definește-l
// așteptați timpul să fie pornit și alarmă sonoră
setTimeout (sound_alarm (), (wait_secs * 1000))
}


Acest lucru funcționează grozav, dar este greu de spus, deoarece nimic nu se schimbă după ce apăsați butonul până când timpul a trecut. Cu toate acestea, DOM ne poate ajuta și cu acest lucru. Am adăugat următoarele 2 rânduri la începutul do_alarm () funcţie:


// marchează alarma ca setată
document.getElementById ( "alarm_button"). dezactivat = true
document.getElementById ("alarm_button"). value = "Alarm Set"


Acest lucru schimbă butonul pe care l-am apăsat pentru a seta alarma pentru a spune „Alarm Set” și o dezactivează. Dacă dorim să putem folosi din nou alarma, va trebui să schimbăm butonul înapoi la starea inițială. Am adăugat acest lucru la funcția sound_alarm (). Puteți vedea tot codul și puteți încerca un exemplu de lucru aici.


Instrucțiuni Video,: Growing up Without Cable (Mai 2024).