Событие onfocus
Определение и использование
Событие onfocus происходит при получении элементом фокуса.
Событие onfocus наиболее часто используется с <input>, <select> и <a>.
Совет: Событие onfocus подобно Событие onblurнапротив.
Совет: Событие onfocus подобно Событие onfocusin.Основное различие заключается в том, что событие onfocus не может перебрасываться. Поэтому, если вы хотите определить, получил ли элемент или его подэлемент фокус, используйте событие onfocusin. Однако, вы можете использовать событие onfocus Метод addEventListener()от useCapture Параметры для этого.
Пример
Пример 1
Выполните JavaScript при фокусировке поля ввода:
<input type="text" onfocus="myFunction()">
Ниже страницы есть больше примеров TIY.
Грамматика
В HTML:
<элемент onfocus="myScript">
В JavaScript:
объект.onfocus = function(){myScript};
В JavaScript, использование метода addEventListener():
объект.addEventListener("focus", myScript);
Комментарий:Internet Explorer 8 и более ранние версии не поддерживают Метод addEventListener()。
Технические детали
Бублящие: | Не поддерживается |
---|---|
Отменяемые: | Не поддерживается |
Тип события: | FocusEvent |
Поддерживаемые HTML-теги: | Все HTML-элементы, кроме: <base>, <bdo>, <br>, <head>, <html>, <iframe>, <meta>, <param>, <script>, <style> и <title> |
Версия DOM: | Уровень 2 событий |
Поддержка браузерами
События | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
onfocus | Поддержка | Поддержка | Поддержка | Поддержка | Поддержка |
Более примеров
Пример 2
Использование событий onfocus и onblur:
<input type="text" onfocus="focusFunction()" onblur="blurFunction()">
Пример 3
Очистка поля ввода, получившего фокус:
<!-- При получении фокуса полем ввода текущее значение заменяется на пустую строку --> <input type="text" onfocus="this.value=''" value="Blabla">
Пример 4
Удаление событий: установите параметр useCapture в addEventListener() в значение true:
<form id="myForm"> <input type="text" id="myInput"> </form> <script> var x = document.getElementById("myForm"); x.addEventListener("focus", myFocusFunction, true); x.addEventListener("blur", myBlurFunction, true); function myFocusFunction() { document.getElementById("myInput").style.backgroundColor = "yellow"; } function myBlurFunction() { document.getElementById("myInput").style.backgroundColor = ""; } </script>
Пример 5
Удаление событий: использование события focusin (Firefox не поддерживает):
<form id="myForm"> <input type="text" id="myInput"> </form> <script> var x = document.getElementById("myForm"); x.addEventListener("focusin", myFocusFunction); x.addEventListener("focusout", myBlurFunction); function myFocusFunction() { document.getElementById("myInput").style.backgroundColor = "yellow"; } function myBlurFunction() { document.getElementById("myInput").style.backgroundColor = ""; } </script>