当用户点击按钮时,我有一些JavaScript(jQuery)代码,它会淡入#myDiv,然后通过使用Timeout函数在5秒后再次淡出。它可以正常工作,但如果用户在超时函数内的fadeOut函数运行之前再次点击按钮,则需要停止超时并重新开始。
我认为答案是首先运行一个函数来清除超时,尽管我无法使其起作用。
$('button').on('click', function() {
//need function here to stop the timeout if running
$("#myDiv").fadeIn(slow);
setTimeout(function(){
$("#myDiv").fadeOut(slow);
}, 5000);
});