摇一摇效果,摇了一次,手机加速传感器检测到两次,如何解决使得它在1s内一次有效,大神求指点
之前回答过一个问题 感觉类似 给题主贴上地址
去抖与节流
简单点的使用 setTimeout,如
function () {
var tid = 0;
return function () {
if (tid) return;
tid = setTimeout(function () {
tid = 0;
}, 1000);
// dosomething
};
}
或者直接使用类似 lo-dash 的 _.throttle
函数。
请查询节流函数
检测到第一次摇的时候执行操作并添加一个计时器。
一秒以内再次检测到摇动时把这次摇动忽略掉,并且清掉计时器。