我有一个函数,我希望最后一次出现的事件覆盖之前的事件。在下面的示例中,我希望在2秒内发生的任何按键事件重新启动计时。
$("#myTextArea").keyup(function () {
$(function () {
setTimeout(function () {
$('form').submit();
}, 2000);
});
});
答案 0 :(得分:1)
您可以使用clearTimeout
来停止计时器。试试这个:
var timer;
$("#myTextArea").keyup(function () {
clearTimeout(timer);
timer = setTimeout(function () {
$('form').submit();
}, 2000);
});
从用户体验的角度来看,我会发现这种行为既烦人又令人困惑。只有在我专门执行某项操作时才能提交表单。