我们可以强制 ZURB Foundation 4 只使用 jQuery 而不是 Zepto 吗?

Posted

技术标签:

【中文标题】我们可以强制 ZURB Foundation 4 只使用 jQuery 而不是 Zepto 吗?【英文标题】:Can we force ZURB Foundation 4 to use jQuery only, and not Zepto? 【发布时间】:2013-04-21 14:10:18 【问题描述】:

我正在使用jQuery 构建一个项目。我在ZURB Foundation 4 中手动引用了 jQuery。

我也删除了

<script>
    document.write('<script src=' +
                   ('__proto__' in  ? 'js/vendor/zepto' : 'js/vendor/jquery') +
                   '.js><\/script>')
</script>

来自默认的 ZURB Foundation 4 实现。

这样好吗?或者删除上述代码会导致 ZURB Foundation 4 中其他地方出现问题?

换句话说,我们可以强制 ZURB Foundation 4 只使用 jQuery,而不是破坏它吗?

【问题讨论】:

【参考方案1】:

sn-p 将始终加载 jQuery 或 Zepto,从不加载两者。所以是的,当然你只能使用 jQuery。

Zepto 是一个功能较少的 jQuery 克隆,因此文件大小要小得多。他们仍然使用 jQuery 的唯一原因是 Zepto 不支持任何版本的 Internet Explorer。

他们也在the documentation中解释:

Foundation javascript 旨在与 Zepto 和 jQuery 一起使用 出了大门。并非所有浏览器都支持 Zepto,因此 Zepto 文档中建议,您应该测试 兼容性并根据需要加载 Zepto 或 jQuery。

【讨论】:

那么,与其回退到 Jquery,为什么不从 jquery 开始呢?另外:后备似乎不适用于 IE。在 IE 9 和 10 中只使用 jquery,我发现一些基础 4 插件不起作用,例如下拉菜单。 @user2139648 正如我所说,Zepto 更小,因此加载速度更快。插件在其他浏览器中是否可以工作,或者您是否遇到任何 JS 错误? 那是我的错误……我禁用了activex。现在他们可以在 IE10 中完美地使用 jquery。但是,我在 IE 控制台中确实遇到了“网络”错误,而在其他浏览器中却没有。这些是随机的。但是,总的来说,完整的 jquery 替换在所有浏览器中都能完美运行。这让我相信 jquery 在 Foundation 4 下几乎可以替代 zepto。 @user2139648 我在 5 小时前就已经写过了。很难相信你可以只使用 jQuery 吗? Zepto 的兼容性不如 jQuery,而且现在大小差异非常小,尤其是对于较新版本的 jQuery。我更担心他们动态注入脚本,而不是允许将其捆绑在串联的脚本文件中。【参考方案2】:

作为一项更新,在 2014 年 1 月,Zurb 宣布在发布 Foundation 5 时放弃 Zepto,转而使用 jQuery 2。

因为他们确定“...较小的文件大小并没有转化为更好的整体性能”,并且“...jQuery 2 每秒有更多的操作。”

http://zurb.com/article/1293/why-we-dropped-zepto

【讨论】:

以上是关于我们可以强制 ZURB Foundation 4 只使用 jQuery 而不是 Zepto 吗?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Zurb 的 Foundation 4 框架,仅使用 CSS。没有 SASS/指南针? [关闭]

通过 SystemJS 加载 Zurb Foundation 站点

用于小型和大型(流体/响应)列的 Zurb Foundation 4 SCSS 混合

如何在我的 Rails 4 应用程序中配置 Compass 和 Zurb Foundation 5,以便它们都可以在同一个目录中访问?

如何在 Zurb Foundation 4/5 全屏中制作行?

Zurb Foundation 4:如何在悬停时更改顶栏部分的背景颜色?