精准定位

//精准去词定位
  function LookMatch() {
    
  }
  LookMatch.init = function(seach, els) {
    var that = new LookMatch();
    that._setElement(seach, els);
  }
    LookMatch.initmany = function(warp) {
    var that ,seach,els;
    warp.each(function(index,item){
       that = new LookMatch();
       seach = $(item).find('input');
       els = $(item).find('ul');
       that._setElement(seach, els);
    })
   
  }
  LookMatch.prototype._setElement = function(seach, ul) {
    this.seachEl = seach;
    this.ul = ul;
    this.backEls = this.ul.clone(true);
    var that = this;
    this.ul.on('click', 'li', function() {
      that.seachEl.val($(this).text());
      that.ul.hide();
      that.restore();
    });
    this.seachEl.on('focus', function() {
      that.ul.show(); 
    }).on('blur',function(){
      console.log('ss');
      setTimeout(function(){
        that.ul.hide();
      },100)
      
    })
    this.seachEl.next().on('click', function() {
      that.ul.show(); 
    });
    this.seachEl.on('keyup', function() {
      var q = $(this).val();
      if (!q) {
        that.restore();
        return;
      }
      var arr = [];
      that.ul.find('li').each(function(i, e) {
        var text = $(this).text();
        var indexof = text.indexOf(q);
        if (indexof != -1) {
          arr.push(e);
        }
      });
      if (!arr.length) {
        return;
      }
      $.each(arr.reverse(), function(i, e) {
        that.ul.prepend(e);
      });
    })

  }
  LookMatch.prototype.restore = function() {
      this.ul.empty().html(this.backEls.html());
    }
   // 搜索框,列表
    LookMatch.initmany($('.wordposition'));

*

原文地址:https://www.cnblogs.com/change-oneself/p/5216190.html