jQuery focusin / focusout. Избегайте фокусировки при отправке
У меня есть небольшой скрипт для переключения счастливого лица при фокусировке в форме:
/* Happy face script */
$('#search').on('focusin', function() {
$("#smile").removeClass("fa-meh-o");
$("#smile").addClass("fa-smile-o");
});
$('#search').on('focusout', function() {
$("#smile").removeClass("fa-smile-o");
$("#smile").addClass("fa-meh-o");
});
Однако когда я click 'submit'
это восходит к focusout
государство. Как мне этого избежать?
1 ответ
Удалить focusoutevent
и использовать toggleClass() как,
$('#search').on('focusin', function() {
$("#smile").toggleClass("fa-meh-o fa-smile-o");
});
$('#submit')on('click',function(){
// your code then you can remove the classes again if not then remove below code
$("#smile").toggleClass("fa-meh-o fa-smile-o");
});
Обновлено вы можете использовать focusin and focusout
с тем же toggleClass
лайк,
$('#search').on('focusin focusout', function() {
$("#smile").toggleClass("fa-meh-o fa-smile-o");
});