如何在一页上运行多个版本的 Zepto.js? [关闭]
Posted
技术标签:
【中文标题】如何在一页上运行多个版本的 Zepto.js? [关闭]【英文标题】:How to run multiple versions of Zepto.js on one page? [closed] 【发布时间】:2013-03-14 06:15:02 【问题描述】:谁能解释我如何以一种对新手友好的方式为 Zepto.js 制作不同的构建(为了包括触摸支持),因为我在 Internet 上的任何地方都找不到详细说明。
【问题讨论】:
github.com/madrobby/zepto#readme ? 这是运行多个实例的 jQuery 方式。由于 Zepto.js 是基于 jQuery 构建的,因此不难找到同等的解决方案:***.com/questions/528241/… @Allendar: 嗯,不是在 jQuery 上构建的,而是在 类似于 jQuery 的基础上构建的。 你把我带到了那里,谢谢你的便条 icktoofay :) 不要关闭,这是一个有用的问题。 【参考方案1】:这应该可以工作,就像 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>
Zepto 不需要“编译”。它只需要放入一个变量中,就像 jQuery 和 MooTools 默认放入 $
一样。如果您愿意,也可以将 Zepto 最常用的版本设置为 $
:
<script src="zepto1.0.js"></script>
<script>
var $ = window.Zepto;
</script>
从那时起,您需要从这些对象触发您的命令。
对于版本1.0
,您只需使用正常的$.()
操作。但是对于版本0.8
,您将使用zep08.()
来调用操作。
注意
来自 Zepto 主页 (http://zeptojs.com):
? Zepto 只会在 $ 尚未定义的情况下将其设置为自身。没有 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("#n-contents"); 40,136 | ±3.78% |慢 95%jQuery/ID
jQuery("#n-contents"); 765,799 | ±4.36% |最快的Zepto / ID
Zepto("#n-contents"); 348,956 | ±4.89% |慢 55%吉什/类
Jeesh(".firstHeading"); 40,748 | ±3.96% |慢 95%jQuery/类
jQuery(".firstHeading"); 306,591 | ±4.31% |慢 60%Zepto / 类
Zepto(".firstHeading"); 284,822 | ±3.92% |慢 63%【讨论】:
以上是关于如何在一页上运行多个版本的 Zepto.js? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章