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

标签 javascript node.js zepto

<分区>

谁能解释一下我如何以对新手友好的方式为 Zepto.js 构建不同的版本(以包括触摸支持),因为我在 Internet 上的任何地方都找不到详细的说明。

最佳答案

这应该可以工作,就像 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 will only set the $ global to itself if it is not yet defined. There is no Zepto.noConflict method.

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

测试

另请查看:http://jsperf.com/qwery-vs-jquery-vs-mootools-selector-engines/11 .在 Chrome 和 Safari 上,jQuery 从 Zepto 中脱颖而出。所以 Zepto 的“初始负载”可能更轻,但 jQuery 似乎在性能方面更胜一筹。

我已经在 Mac OS X 10.8.3 上的 Safari 6.0.3 上进行了测试,结果如下:

吉什/ID

  • Jeesh("#n-contents");
  • 40,136 | ±3.78% |慢 95%

jQuery/ID

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

Zepto/ID

  • Zepto("#n-内容");
  • 348,956 | ±4.89% |慢 55%

Jeesh/类

  • Jeesh(".firstHeading");
  • 40,748 | ±3.96% |慢 95%

jQuery/类

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

Zepto/类

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

关于javascript - 如何在一个页面上运行多个版本的 Zepto.js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15603391/

相关文章:

javascript - 如何用跨度包裹标题的第一个单词

javascript - 更新 mongodb 集合中的字段,即使它不存在

javascript - JS : regex for numbers and spaces?

Javascript:如何检查元素是否可见?

javascript - 如何使用 JavaScript 禁用 HTML 按钮?

javascript - 我可以使用 phantomjs/casperjs 获取原始页面源代码(与当前 DOM 相比)吗?

node.js - 除非先删除 node_modules 文件夹,否则 NPM 安装无法正常工作?

node.js - Mocha测试说express结果不是json。 json 验证说它是

javascript - fqdn 后缺少正斜杠

javascript - 如何合并具有相同键的嵌套对象