Javascript 如何在事件发生后覆盖jQuery函数?
所以我有一个带有搜索框、复选标记和加载微调器的页面。当用户关注搜索框时,微调器淡入。用户打开搜索框,微调器淡出。我有一个功能在用户在搜索框中按enter键后切换复选标记,但是,我希望复选标记永远可见。现在,当用户按下enter键时,它会切换复选标记并很快消失,因为unfocus函数会自动调用 切换复选标记功能:Javascript 如何在事件发生后覆盖jQuery函数?,javascript,jquery,html,search-box,Javascript,Jquery,Html,Search Box,所以我有一个带有搜索框、复选标记和加载微调器的页面。当用户关注搜索框时,微调器淡入。用户打开搜索框,微调器淡出。我有一个功能在用户在搜索框中按enter键后切换复选标记,但是,我希望复选标记永远可见。现在,当用户按下enter键时,它会切换复选标记并很快消失,因为unfocus函数会自动调用 切换复选标记功能: $('#searchText').on('keypress', function (e) { if (e.which === 13) { var val = $(
$('#searchText').on('keypress', function (e) {
if (e.which === 13) {
var val = $('#searchText').val();
$('.circle-loader').toggleClass('load-complete');
$('.checkmark').toggle();
alert(val);
return false;
}
});
var searchPerformed = false;
$('#searchText').on('keypress', function (e) {
if (e.which === 13) {
searchPerformed = true;
var val = $('#searchText').val();
$('.circle-loader').toggleClass('load-complete');
$('.checkmark').toggle();
alert(val);
return false;
}
});
$(function () {
$('#searchText').focusin(function () {
$('#check').fadeIn();
}).focusout(function () {
if (!searchPerformed)
$('#check').fadeOut();
});
});
淡入淡出功能:
$(function () {
$('#searchText').focusin(function () {
$('#check').fadeIn();
}).focusout(function () {
$('#check').fadeOut();
});
});
当用户在搜索框中按enter键时,如何覆盖淡入淡出功能或重写该功能以停止
提前感谢。使用jQuery.stop方法。在元素上调用.stop时,当前运行的动画(如果有)将立即停止。例如,如果在调用.stop时使用.slideUp隐藏某个元素,则该元素现在仍将显示,但将是其先前高度的一小部分。不调用回调函数
我将使用一个布尔值来表示是否执行了搜索。请参见下面的示例。在不知道代码结构的情况下,我将其设置为全局,但可以将其更改为检查特定对象 切换复选标记功能:
$('#searchText').on('keypress', function (e) {
if (e.which === 13) {
var val = $('#searchText').val();
$('.circle-loader').toggleClass('load-complete');
$('.checkmark').toggle();
alert(val);
return false;
}
});
var searchPerformed = false;
$('#searchText').on('keypress', function (e) {
if (e.which === 13) {
searchPerformed = true;
var val = $('#searchText').val();
$('.circle-loader').toggleClass('load-complete');
$('.checkmark').toggle();
alert(val);
return false;
}
});
$(function () {
$('#searchText').focusin(function () {
$('#check').fadeIn();
}).focusout(function () {
if (!searchPerformed)
$('#check').fadeOut();
});
});
淡入淡出功能:
$('#searchText').on('keypress', function (e) {
if (e.which === 13) {
var val = $('#searchText').val();
$('.circle-loader').toggleClass('load-complete');
$('.checkmark').toggle();
alert(val);
return false;
}
});
var searchPerformed = false;
$('#searchText').on('keypress', function (e) {
if (e.which === 13) {
searchPerformed = true;
var val = $('#searchText').val();
$('.circle-loader').toggleClass('load-complete');
$('.checkmark').toggle();
alert(val);
return false;
}
});
$(function () {
$('#searchText').focusin(function () {
$('#check').fadeIn();
}).focusout(function () {
if (!searchPerformed)
$('#check').fadeOut();
});
});
固定
$('#searchText').unbind("focusin");
$('#searchText').unbind("focusout");
在切换复选标记功能中。
谢谢你的替代方法,大家以后会很方便的