Domanda

Sto usando HTML5 <canvas> element in Firefox 2.0.0.16 e in Safari 3.1.2, entrambi sul mio iMac.(L'ho provato anche in Firefox 3.0 su Windows, anche questo senza alcun risultato.) Il tag è simile al seguente:

<td>
   <canvas id="display"
           width="500px"
           height="500px">
   </canvas>
</td>

Ho un pulsante per "attivare" alcune funzionalità che interagiscono con la tela.Quel pulsante è onclick() l'evento chiama una funzione.In quella funzione ho la seguente riga:

document.getElementById("display").focus();

Questo non funziona.Firebug non segnala errori.Ma il focus rimane ancora dov’era.Posso fare clic sulla tela o premere il tasto Tab verso la tela e la messa a fuoco verrà persa dagli altri elementi, ma apparentemente non verrà mai acquisita dalla tela (la tela onfocus() l'evento non si attiva mai).

Lo trovo strano.È che la tela semplicemente non riesce a mettere a fuoco o mi sto perdendo qualcosa qui?Qualsiasi intuizione sarebbe apprezzata.

Grazie.

È stato utile?

Soluzione

Assegna alla tela un indice di scheda:

   <canvas id="display"
           width="500px"
           height="500px"
           tabindex="1">
   </canvas>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top