Як я можу відфокусувати текстову область або ввід? Не вдалося знайти $('#my-textarea').unfocus();метод?
Як я можу відфокусувати текстову область або ввід? Не вдалося знайти $('#my-textarea').unfocus();метод?
Відповіді:
$('#textarea').blur()
Документація за адресою: http://api.jquery.com/blur/
$('#textarea').bind('blur', function() ...)також
Виходячи з вашого запитання, я вважаю, що відповідь полягає в тому, як викликати розмиття , а не просто (або навіть) встановити подію:
$('#textArea').trigger('blur');
Вгадайте, що ви шукаєте .focusout()
focusoutзапускається лише після того, як вхід вже починає втрачати фокус. Запитуючий хоче ввести елемент у цей стан обробника зворотного виклику soa, він не зробить його гарним developer.mozilla.org/en-US/docs/Web/Reference/Events/focusout api.jquery.com/focusout
Це працює для мене:
// Document click blurer
$(document).on('mousedown', '*:not(input,textarea)', function() {
try {
var $a = $(document.activeElement).prop("disabled", true);
setTimeout(function() {
$a.prop("disabled", false);
});
} catch (ex) {}
});
.focusout()яка дещо відрізняється відblur()api.jquery.com/focusout , цитуючи docThis is distinct from the blur event in that it supports detecting the loss of focus on descendant elements (in other words, it supports event bubbling)