[英]JavaScript/jQuery - Fire event after keyup and timeout
我想在我的搜索功能中添加一個功能,該功能將在觸發keyup事件后n秒執行搜索。 這個想法是,如果有人停止嘗試一秒左右,他們就不必點擊搜索按鈕。 到目前為止,我在點擊時,在刪除術語時點擊搜索功能,然后輸入。 我在下面的代碼中標記了我想要定時器的東西。 我問這個是因為它差不多凌晨3點,而JavaScript正在傷害我的腦袋。 抱歉,如果重復......
這就是我所擁有的:
$("#filter").keyup( function(e)
{
var filter = $("#filter").val();
if( filter == 0 || filter == '' || filter == null )
{
test();
}
else
{
*********** timer, then test();
}
if (e.which == 13)
{
e.preventDefault();
test();
}
});
$("#filter").keyup( function(e) {
var filter = $("#filter").val(),
timer = $('#filter').data('timeout'),
n = 2;// the number of seconds to wait
if(timer) {
clearTimeout(timer);
$('#filter').removeData('timeout');
}
if( filter == 0 || filter == '' || filter == null ) {
test();
} else if (e.which == 13) {
e.preventDefault();
test();
} else {
$('#filter').data('timeout', setTimeout(test, 1000 * n));
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.