如何仅在 jquery 可见时才在几秒钟后淡出元素
How to fadeout an element after a few second only when it is visible with jquery
我正在尝试使用以下代码在几秒钟后淡出一个元素
if(jQuery('.invalidcontent_wrapper').is(':visible')){
var xSeconds = 4000;
setTimeout(function() {
jQuery('.invalidcontent_wrapper').fadeOut('fast');
}, xSeconds);
};
但是它有一个错误,当点击到下一次时,当它打开时它隐藏了quickly.How我可以以某种方式清除秒数并仅在显示元素时执行此操作?
尝试在用户再次点击时清除timeout
,
var xSeconds = 4000;
var timeOut = 0;
jQuery("#someClick").click(function(){
var elem = jQuery('.invalidcontent_wrapper');
if(elem.is(':visible')){
clearTimeout(timeOut);
timeOut = setTimeout(function() {
elem.fadeOut('fast');
}, xSeconds);
}
});
我正在尝试使用以下代码在几秒钟后淡出一个元素
if(jQuery('.invalidcontent_wrapper').is(':visible')){
var xSeconds = 4000;
setTimeout(function() {
jQuery('.invalidcontent_wrapper').fadeOut('fast');
}, xSeconds);
};
但是它有一个错误,当点击到下一次时,当它打开时它隐藏了quickly.How我可以以某种方式清除秒数并仅在显示元素时执行此操作?
尝试在用户再次点击时清除timeout
,
var xSeconds = 4000;
var timeOut = 0;
jQuery("#someClick").click(function(){
var elem = jQuery('.invalidcontent_wrapper');
if(elem.is(':visible')){
clearTimeout(timeOut);
timeOut = setTimeout(function() {
elem.fadeOut('fast');
}, xSeconds);
}
});