Установить фокус на текстовое поле после оповещения в Safari - PullRequest
1 голос
/ 26 мая 2010

Я пытаюсь вернуть фокус в текстовое поле после отображения сообщения. Как следующий код:

<input type="text" id="text1" />
<input type="submit" id="submit1" onclick="alert('test');document.getElementById('text1').focus();return false;" />

Это не работает в Safari. У меня версия 4.0.5 для Windows.

1 Ответ

0 голосов
/ 26 мая 2010

Это тоже не работает для меня, и я подозреваю, что это связано с нежеланием Safari претендовать на общий фокус окна после его потери. Однако это всего лишь теория, поскольку я ничего не знаю о внутренностях Safari, но я почти уверен, что он вообще не поддерживает window.focus(). Таким образом, я думаю, что окно браузера как бы думает, что это не сфокусированное окно, и поэтому оно игнорирует любые попытки сфокусировать что-либо .

Я как бы подтвердил эту теорию на этой тестовой странице: http://gutfullofbeer.net/safari_focus.html

Если вы нажмете на кнопку «Нажми меня» и затем закроете всплывающее окно с предупреждением, а затем сразу же щелкните в любом месте окна браузера (не текстовое поле), то через пару секунд появится текстовое поле получить фокус.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...