2015-04-14 3 views
0

Как я могу заставить форму исчезать, когда фокус полностью потерян? Или другой способ его установки: как я могу предотвратить исчезновение формы, когда фокус просто сдвинут с одного входа на другой?Форма затухания при фокусировке

Мой недостаток подход:

form.focusout(function(){ 
    form.fadeout(); 
}); 

Я привязал добавить, если заявление подсчета количества входов с акцентом, но на не приносит никакой пользы, так как LostFocus пожары до новой фокусировки.

+0

Почему бы не использовать 'mouseleave'-событие ...? – enyce12

+0

Может включать 'html'? – guest271314

+0

Im работает в проекте django, где соответствующие html и javascript разбросаны по сложной форме:/ – SverkerSbrg

ответ

2

попробуйте установить тайм-аут, а затем, если другой вход имеет фокус, очистить тайм-аут, чтобы избежать FadeOut:

var timeout; 
form.find('input').on('focusout', function(){ 
    timeout = setTimeout(function() {form.fadeout();}, 2000); 
}); 

form.find('input').on('focusin', function(){ 
    clearTimeout(timeout); 
}); 
+0

Если это сработает, будет ли это хорошо. Наверное, дайте лучшее ощущение UX, чем я пытался это сделать ... Я попробую это спасибо! – SverkerSbrg

+0

Рад помочь :) – taxicala