Я использую элемент 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 не сообщает об ошибках. Но фокус по-прежнему остается там, где был. Я могу щелкнуть холст или вкладку в направлении холста, и фокус будет потерян для других элементов, но, очевидно, никогда не будет получен холстом (событие onfocus() холста никогда не срабатывает).
Я считаю это странным. Может быть, холст просто не может сфокусироваться, или мне что-то здесь не хватает? Любое понимание будет оценено.
Спасибо.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Дайте холсту индекс вкладки:
<canvas id = "display"
width = "500px"
height = "500px"
tabindex = "1">
</canvas>
Это был бы вопрос к @Angelo.
Я не уверен, был ли это Chrome для Windows или Android (примечание 10.1). Но, должно быть, это была последняя версия на тот момент ..
Android может иметь смысл - IIRC, «фокус клавиатуры» на самом деле не существует в том же смысле, что и для настольных браузеров, @Angelo.
Может ли кто-нибудь уточнить, в каких браузерах он работал, а в каких нет?