检测事件回调的开始和结束
Detect start and end of an event callback?
我正在使用新的mapbox.js API,尤其是事件回调"平移"。当用户移动地图时,回调会触发大约 50-100 次,这太多了。只获得第一个和最后一个事件(或仅最后一个事件)的最佳方法是什么?
map.addCallback('panned', function(move) {
console.log('panned');
});
使用 .setTimeout:
var timeout = null;
map.addCallback('panned', function (move) {
timeout && window.clearTimeout(timeout);
timeout = window.setTimeout(function () {
console.log('panned')
}, 100)
})
对于超时时间,请选择适当的时间,您必须通过摆弄几个值来找出该时间。
UnderscoreJS有一些有用的函数。
根据您所描述的内容,去抖动可能最适合您:...将其执行推迟到自上次调用以来经过等待毫秒之后
"油门"也很有用:"...实际上,每等待一毫秒最多调用一次原始函数。对于发生速度快于您跟上速度的速率限制事件很有用。
呵呵
相关文章:
- 希望日期开始结束于while循环中的一个房间id的一个数组
- 处理第三方库发送的ajax请求的开始和结束事件
- 从工作日结束到下一个工作日开始的完整日历JS包装时间
- 使用javascript&自定义验证器检查开始日期和结束日期
- 如何在上一个动画结束后开始动画
- 如何在dhtmlxgantt中显示灯箱中的开始日期、结束日期和持续时间
- 如何在javascript中获得给定的月份开始日期和结束日期
- 在选择开始日期后设置结束日期
- 基础日期选择器、结束日期(和时间)不能早于开始日期(和时间)
- 在JavaScript中搜索文本并获取其所有开始和结束索引
- 结束日期作为基础日期时间选择器中的选定开始日期
- 检测事件回调的开始和结束
- 从 ngDialog 模式修改完整日历事件信息(开始和结束)
- 开始日期和结束日期输入字段的 JQuery 筛选器表
- 在ExtJS中获取开始/结束日期之间的日期
- 根据DOM,HTML元素的开始和结束标记之间的内容被称为属性.这个房产的名字是什么
- 如何在Dynamics CRM中获取时区的夏令时开始和结束时间
- Regexp表示不允许在结束/开始处使用特殊字符,但应该允许空格
- Spotify JavaScript API歌曲结束/开始事件与新的API
- 完整日历-结束/开始事件的日期格式