Подтвердить что ты не робот

Функция Div - onblur

Я хочу называть onblur на div. Не уверен, как это сделать.

Пробовал это:

div onblur="javascript:callme()"

но это не сработало

4b9b3361

Ответ 1

Для события blur для запуска элемента необходимо сначала получить фокус. Но элементы <div> не получают фокуса по умолчанию.

Вы можете добавить tabindex="0" или contentEditable в свой div, чтобы получить фокус.

Смотрите в действии: http://jsfiddle.net/t25rm/

Ответ 2

Событие размытия срабатывает при утере фокуса. По умолчанию элемент div не может иметь фокус в первую очередь, чтобы он не мог быть потерянным.

Если вы установите tabindex в div, тогда он может получить фокус, но вы должны почти всегда использовать более подходящий элемент (например, кнопку), когда думаете о создании интерактивных элементов управления.

<!-- Not recommended. See above -->
<div tabindex="1" onblur="callme()"> content </div>

Ответ 3

Если вы укажете div как атрибут tabindex, он сможет принять фокус:

<div id="yourdivid" tabindex="0">content</div>

затем присоединить обработчики событий фокуса и размытия Например:

document.getElementById("yourdivid").onfocus = function() {
   alert('focused');
}
document.getElementById("yourdivid").onblur = function() {
   alert('blur');
}