js 防止连续事件

/**
 * 防止连续事件
 * @param id 事件触发Id
 * @param fn 内部回调方法
 * @param wait 延迟时间
 * */
var _timer = {};
function delay_till_last(id, fn, wait) {
  if (_timer[id]) {
    window.clearTimeout(_timer[id]);
    delete _timer[id];
  }
  return _timer[id] = window.setTimeout(function () {
    fn();
    delete _timer[id];
  }, wait);
}

用法

delay_till_last('cityText', function() {
      var data = $('.city_province').data('city');
      var searchInfo = new Array();
      $.each(data,function(k,v){
        if(v.city_name.search(text)>-1){
          searchInfo.push({
            city_name: v.city_name
          });
        }
      });
      $('.widget-autocomplete-list').empty();
      $.each(searchInfo,function(k,v){
        $('.widget-autocomplete-list').append('<li class="list-li">'+v.city_name+'</li>');
      });     
    }, 500);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值