修改zepto源代码,使支持wp8的ie10

注意:当前1.1.3版本的zepto,已经有模块来支持wp8

原先的zepto,通过__proto__赋值,来使dom继承到$.fn方法,

无奈IE11之前的IE10,IE9不支持这种写法,

所以我们只能自己手动把方法添加到dom

复制代码
// `$.zepto.Z` swaps out the prototype of the given `dom` array
  // of nodes with `$.fn` and thus supplying all the Zepto functions
  // to the array. Note that `__proto__` is not supported on Internet
  // Explorer. This method can be overriden in plugins.
  zepto.Z = function(dom, selector) {
    dom = dom || []

    // 支持ie10,主要是支持wp8
    if(navigator.userAgent.indexOf("MSIE 10") > -1){
      for(var func in $.fn){
        dom[func] = $.fn[func];
      }
    }
    else{
      dom.__proto__ = $.fn
    }
    
    dom.selector = selector || ''
    return dom
  }
复制代码

合乎自然而生生不息。。。
原文地址:https://www.cnblogs.com/Alex80/p/4481043.html