当弹出窗口处于活动状态时,停止自动关闭弹出窗口(jquery/javascript)

当弹出窗口处于活动状态时,停止自动关闭弹出窗口(jquery/javascript),javascript,jquery,Javascript,Jquery,我写了一个代码,弹出窗口自动关闭,但问题是当用户从弹出窗口中选择/键入内容时,弹出窗口不应该关闭。如果弹出窗口空闲10秒/15秒,则应自动关闭。感谢您的帮助,提前谢谢 $(文档).ready(函数(){ $(“.popup_data”).hide(); $(“#搜索”)。单击(函数(){ 如果($(“.popup_data”).css(“显示”)==“无”){ $(“.popup_data”).show(); }否则{ $(“.popup_data”).hide(); } }); });

我写了一个代码,弹出窗口自动关闭,但问题是当用户从弹出窗口中选择/键入内容时,弹出窗口不应该关闭。如果弹出窗口空闲10秒/15秒,则应自动关闭。感谢您的帮助,提前谢谢

$(文档).ready(函数(){
$(“.popup_data”).hide();
$(“#搜索”)。单击(函数(){
如果($(“.popup_data”).css(“显示”)==“无”){
$(“.popup_data”).show();
}否则{
$(“.popup_data”).hide();
}
});  
});
$(文档).ready(函数(){
$(“#搜索”)。单击(函数(){
如果($('.popup_data')。是(':visible')){
var timeout=window.setTimeout(函数(){
$('.popup_data').stop().fadeOut('medium');
}, 5000);
}
});
})
.popup_data{边框:1px实心#C6CFD6;宽度:320px;高度:120px;}

弹出窗口
测试1
12
二
测试2
1
2
添加2个事件侦听器。 第一个将破坏计时器,而集中在弹出窗口内的选择。 第二个将在任何select fires blur事件后重新启动计时器

$(文档).ready(函数(){
$(“.popup_data”).hide();
$(“#搜索”)。单击(函数(){
如果($(“.popup_data”).css(“显示”)==“无”){
$(“.popup_data”).show();
}否则{
$(“.popup_data”).hide();
}
});  
});
$(文档).ready(函数(){
var超时;
$(“#搜索”)。单击(函数(){
如果($('.popup_data')。是(':visible')){
timeout=startTimer();
}
$('body')。在('focus','select',()=>{
clearTimeout(超时);
});
$('body')。在('blur','select',()=>{
clearTimeout(超时);
timeout=startTimer();});
});
});
常数startTimer=()=>(
setTimeout(函数(){
$('.popup_data').stop().fadeOut('medium');
}, 2000)
);
.popup_data{边框:1px实心#C6CFD6;宽度:320px;高度:120px;}

弹出窗口
测试1
12
二
测试2
1
2

您可以使用bind函数来绑定您想要停止隐藏模式的任何事件,我已经添加了change和keyup事件

$(文档).ready(函数(){
var idle=false;
var超时=null;
$(文档).bind(“更改键向上单击”,函数(){
clearTimeout(超时);
timeout=setTimeout(函数(){
如果($('.popup_data')。是(':visible')){
$('.popup_data').stop().fadeOut('medium');
}
}, 5000);
});
$(“.popup_data”).hide();
$(“#搜索”)。单击(函数(){
如果($(“.popup_data”).css(“显示”)==“无”){
$(“.popup_data”).show();
}否则{
$(“.popup_data”).hide();
}
});  
})
.popup_data{边框:1px实心#C6CFD6;宽度:320px;高度:120px;}

弹出窗口
测试1
12
二
测试2
1
2