2008-09-11 7 views
14

Ich verwende das HTML5 <canvas> Element in Firefox 2.0.0.16 und in Safari 3.1.2, beide auf meinem iMac. (Ich habe auch diese in Firefox 3.0 unter Windows versucht, auch ohne Erfolg.) Der Tag sieht wie folgt aus:Wie stellen Sie den Fokus auf das HTML5-Canvas-Element ein?

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

Ich habe eine Schaltfläche „Aktivieren“ einige Funktionen, die mit der Leinwand in Wechselwirkung tritt. Das Ereignis onclick() dieser Schaltfläche ruft eine Funktion auf. In dieser Funktion habe ich die folgende Zeile:

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

Dies funktioniert nicht. Firebug meldet keinen Fehler. Aber der Fokus bleibt immer noch wo er war. Ich kann auf die Leinwand oder den Tab auf die Leinwand klicken und der Fokus wird von den anderen Elementen verloren gehen, aber scheinbar niemals von der Leinwand gewonnen werden (Das Ereignis onfocus() der Leinwand wird nie ausgelöst).

Ich finde das merkwürdig. Ist es so, dass die Leinwand einfach nicht fokussiert werden kann, oder fehlt mir hier etwas? Jeder Einblick würde geschätzt werden.

Vielen Dank.

Antwort

25

die Leinwand eine Registerkarte Index Geben Sie:

<canvas id="display" 
      width="500px" 
      height="500px" 
      tabindex="1"> 
    </canvas> 
+11

nicht für mich arbeiten –

+0

jemand auf dem ausarbeiten kann browsers es tat und nicht funktionierte? – RichC

+0

Das wäre eine Frage für @ Angelo. – Shog9