setTimeout咯,setTimeout有个返回值,先使用一个变量接收起来,再根据情况清空这个变量以标志5秒是否已过: var timeout; timeout = setTimeout(function() { console.log('Timeout exceeded'); showAnswer(); timeout = null; }, 5000); $('#someID').click(function() { console.log('User clicked!'); if(timeout) { // 用户在5秒内点击了 clearTimeout(timeout); // 取消定时器 // Do something here } else { // 用户在5秒后点击了 // Do something here } });
setTimeout
咯,setTimeout
有个返回值,先使用一个变量接收起来,再根据情况清空这个变量以标志5秒是否已过: