如何在一个页面上运行多个版本的Zepto.js?

dre*_*ata 4 javascript node.js zepto

有人可以解释一下我怎么能以一种noob友好的方式为Zepto.js(为了包括触摸支持)制作不同的版本,因为我无法在互联网上的任何地方找到详细的说明.

小智 5

这应该工作,就像jQuery一样:

<script src="zepto1.0.js"></script>
<script>
    var zep10 = window.Zepto;
</script>

<script src="zepto0.8.js"></script>
<script>
    var zep08 = window.Zepto;
</script>
Run Code Online (Sandbox Code Playgroud)

Zepto不需要"编译".它只需要放入变量,如jQuery和MooTools $默认进入.$如果您愿意,也可以将最常用的Zepto版本设置为:

<script src="zepto1.0.js"></script>
<script>
    var $ = window.Zepto;
</script>
Run Code Online (Sandbox Code Playgroud)

当然,您需要从那时起从这些对象触发命令.

对于版本,1.0您只需使用正常$.()操作.但对于版本,0.8您将用于zep08.()调用操作.

注意

从Zepto主页(http://zeptojs.com):

如果尚未定义,Zepto将仅将$ global设置为自身.没有Zepto.noConflict方法.

因此,如果您已经加载了jQuery或MooTools,它就不会破坏$绑定,只要您在Zepto之前加载这些库.否则你仍然会被覆盖.

测试

另请查看:http://jsperf.com/qwery-vs-jquery-vs-mootools-selector-engines/11.在Chrome和Safari上,jQuery从Zepto获得了巨大的成功.因此,使用Zepto可能会有一个较轻的"初始负载",但似乎jQuery在性能方面获胜.

我已经测试Safari 6.0.3 on Mac OS X 10.8.3了这些结果:

Jeesh/ID

  • 杰什( "#N-内容");
  • 40,136 | ±3.78%| 慢了95%

jQuery/ID

  • jQuery的( "#N-内容");
  • 765,799 | ±4.36%| 最快的

Zepto/ID

  • 仄( "#N-内容");
  • 348,956 | ±4.89%| 慢了55%

Jeesh /班

  • 杰什( "firstHeading");
  • 40,748 | ±3.96%| 慢了95%

jQuery/class

  • jQuery的( "firstHeading");
  • 306,591 | ±4.31%| 慢了60%

Zepto/class

  • 仄( "firstHeading.");
  • 284,822 | ±3.92%| 慢了63%