Як передати фокус

Як передати фокус

Коли ви розробляєте сценарій поведінки користувача на сторінці HTML, ви можете позначити вказівник на певний елемент, розміщений на цій сторінці. Як, наприклад, це зроблено на головній сторінці пошукової системи Рамблер, де курсор при завантаженні сторінки встановлюється в полі введення пошукового запиту. Реалізувати таку передачу фокусу заданому елементу можна за допомогою мови JavaScript.


1. Скористайтеся властивістю focus () потрібного елемента сторінки, щоб передати йому фокус вводу. Наприклад, щоб помістити курсор в текстове поле з ідентифікатором MainTextField відразу після завантаження сторінки в браузер відвідувача, можна помістити відповідний JavaScript-код в атрибут onload тегу body:< body onload = "" document.getElementById ('MainTextField') .focus () "> Тут використано метод getElementById стандарту DOM (Document Object Model - Знайденим елементом передається фокус введення з focus.допомогоювластивості

2. Якщо потрібно передати фокус, наприклад, при натисканні поміщеної в сторінку кнопки, то відповідний JavaScript-код можна помістити в атрибут, що визначає поведінку кнопки при клацанні на ній - onclick. Тег такої кнопки можна записати, наприклад, так:< button onclick = "" document.getElementById ('MainTextField') .focus () "> передати фокус </button > Таким же способом можна помістити код передачі фокусу в теги більшості елементів, в

3. Використовуйте атрибут onblur, якщо ви бажаєте передати фокус не за клацанням, а за переміщенням фокусу з будь-якого елемента до наступного: Наприклад, якщо користувач заповнив одне поле форми і переходить до наступного, то можна примусово перекласти фокус введення не до наступного за порядком елемента, а до того, який ви вкажете в коді, поміщеному в атрибут onblur:<input type=""text"" onblur=""document.getElementById('MainTextField').focus()"" />

4. Помістіть в атрибут onblur умовний оператор, якщо потрібно передати фокус залежно від виконання будь-якої умови. Наприклад, якщо поле форми обов 'язково повинно бути заповнено, то в його атрибут onblur можна помістити перевірку, чи введено яке-небудь значення і якщо відповідь від' ємна, то повернути фокус введення в це ж поле:<input type=""text"" id=""MainTextField"" onblur=""if(this.value=='')this.focus()"" />