questa è una funzione chiamata come listener sull'evento onkeydown:
dunque, con lo switch sono definiti una serie di casi in cui premendo le frecce della tastiera vengono attivate determinate funzioni e la variabile triggered assume valore true.codice:function onDocKeyDown( event ) { if ( event.target.contentEditable != 'inherit' || event.shiftKey || event.altKey || event.ctrlKey || event.metaKey ) return; var triggered = false; switch( event.keyCode ) { // se premi freccia su case 33: navigatePrev(); triggered = true; break; // se premi freccia giù case 34: navigateNext(); triggered = true; break; // sinistra case 37: navigateLeft(); triggered = true; break; // destra case 39: navigateRight(); triggered = true; break; } if( triggered ) { event.preventDefault(); } else if ( event.keyCode === 27 && supports3DTransforms ) { //premendo Esc if( visionePanoramicaAttiva() ) { deAttivaVisionePanoramica(); } else { attivaVisionePanoramica(); } event.preventDefault(); } }
Poi dopo c'è una struttura if-elseif in cui compare per due volte event.preventDefault. L'uso di questo metodo qui non mi è chiaro. preventDefault() serve per cancellare un evento di default: se fosse un link e lo attivassi su un link fermerei il reindirizzamento ad una nuova pagina; se fosse un submit potrei bloccare la funzione di invio attraverso la tastiera. Ma qui? perchè è necessario? Qual è l'evento di default che si vuole evitare?

Rispondi quotando
