У меня есть textarea, что, когда он сфокусирован, я хочу показать кнопку рядом с этим текстом.Нажмите кнопку перед тем, как скрыть JS
Мой процесс был:
<div class="div_textarea col-lg-6">
<button class="button pull-right invisible" type="button">click</button>
<textarea rows="4" cols="50">Test</textarea>
</div>
Поместите текстовое поле и кнопку в одном DIV:
клик ТестИспользование JS Скрыть и сделать кнопку видимой:
$(document).ready(function() {
$(".div_textarea").focusin(function() {
$(this).find('button').css('visibility', 'visible');
});
$(".div_textarea").focusout(function() {
$(this).find('button').css('visibility', 'hidden');
});
});
Проблема:
Когда я нажимаю кнопку, событие клика не происходит, так как кнопка сначала скрыта. Что я могу сделать, чтобы решить эту проблему?
JSFiddle here.
Edit:
Я использовал это, чтобы решить эту проблему, как указано некоторыми пользователями:
$(".div_textarea").focusin(function() {
$(this).find('button').css('visibility', 'visible');
});
$(".div_textarea").focusout(function() {
$(".div_textarea").mouseleave(function() {
$(this).find('button').css('visibility', 'hidden');
})
});
Это не сработало так, как я ожидал. Задержка скрыть должна быть не менее 100 мс или событие кнопки не срабатывает. Очень странно. Смотри ниже. Я обеспокоен тем, что магическое число не должно входить в это. –