1

我使用函数 mousemove({})。我希望仅在至少 1 秒前最后一次调用此 mousemove 函数时才调用它。我知道我可以使用某种计时器并设置条件

if( cur_time - last_time > 1)
  do_the_stuff();
  1. 有没有更好的方法来做到这一点?
  2. 如果不是,我应该使用什么函数来获取 cur_time (或获取时间过去)?
4

2 回答 2

2

这听起来是个不错的方法。您的代码应如下所示:

var last_moved;
$(document).mousemove(function(e){
    if (!last_moved || (e.timeStamp - last_moved > 1000)) {
        do_the_stuff();

        last_moved = e.timeStamp;
    }
});

请参阅jsFiddle 上的工作示例

于 2011-01-02T15:12:20.123 回答
0

不,这似乎是最好的方法。将该语句放在 mousemove 中,您应该会得到所需的内容。

于 2011-01-02T15:08:24.897 回答