Ответ 1
Дайте холсту индекс табуляции:
<canvas id="display"
width="500px"
height="500px"
tabindex="1">
</canvas>
Я использую элемент HTML5 <canvas>
в Firefox 2.0.0.16 и в Safari 3.1.2, как на моем iMac. (Я также пробовал это в Firefox 3.0 на Windows, также безрезультатно). Тег выглядит следующим образом:
<td>
<canvas id="display"
width="500px"
height="500px">
</canvas>
</td>
У меня есть кнопка для активации некоторых функций, взаимодействующих с холстом. Эта кнопка onclick()
вызывает функцию. В этой функции у меня есть следующая строка:
document.getElementById("display").focus();
Это не работает. Firebug не сообщает об ошибке. Но фокус все еще остается там, где он был. Я могу щелкнуть по холсту или вкладке в сторону холста, и фокус будет потерян из других элементов, но, видимо, никогда не будет наложен на холст (событие canvas onfocus()
никогда не срабатывает).
Я нахожу это странным. Разве что холст просто не может получить фокус, или я что-то пропустил? Любое понимание было бы оценено.
Спасибо.
Дайте холсту индекс табуляции:
<canvas id="display"
width="500px"
height="500px"
tabindex="1">
</canvas>