欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

jquery和zepto冲突解决以及体会

发布时间:2025/3/19 25 豆豆
生活随笔 收集整理的这篇文章主要介绍了 jquery和zepto冲突解决以及体会 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

为什么80%的码农都做不了架构师?>>>   

##背景 最近公司在做一个基于移动端的项目,算是第一次公司好几个人都参与的,在前端的js插件选用上,前端人员选择了使用zepto,前端的妹子说这个对于移动端的支持会比较好,然后还使用了一个require.js的技术。 ##问题 前端在做一个三级联动的地址选择的时候,使用了一个pick的插件,但是这个插件是基于jquery的,这就导致了一个问题,我们基本所有页面都使用了zepto,而且zepto的选择关键字也设置为了$,和jquery重复了,导致我们在zepto和jquery都引入的情况下,使用$这个选择器的时候,会有一定情况无法正确识别是哪个,页面就会报错了 ##解决 一开始,我们以为是因为使用了require.js导致的,但是后面发现无论我们怎么去调整,都是不可以的,最后不得已问百度,最后在知乎里面看到 https://www.zhihu.com/question/37202729 我就在代码做了修改,凡是用到jquery的地方,我都使用jQuery的关键字来调用

jQuery 和其他 JavaScript 框架 正如您已经了解到的,jQuery 使用 $ 符号作为 jQuery 的简写。 如果其他 JavaScript 框架也使用 $ 符号作为简写怎么办? 其他一些 JavaScript 框架包括:MooTools、Backbone、Sammy、Cappuccino、Knockout、JavaScript MVC、Google Web Toolkit、Google Closure、Ember、Batman 以及 Ext JS。 其中某些框架也使用 $ 符号作为简写(就像 jQuery),如果您在用的两种不同的框架正在使用相同的简写符号,有可能导致脚本停止运行。 jQuery 的团队考虑到了这个问题,并实现了 noConflict() 方法。jQuery.noConflict(); jQuery(function($){$("#add-city").cityPicker({title: "请输入地址",}); });

#后记 至此,问题算是解决了,虽然很简单,但是缺花费了大量的时间,后面仔细想想,其实是我们一开始的路子没走好,我们选择了一个js框架,按理是不应该再选择其他的,我们还用了其他并且使用了同样的关键字,而且在问题出现的时候去胡乱搞,并没有善用搜索工具,其实我们遇到的问题肯定别人也会遇到的,这几点要切记。

转载于:https://my.oschina.net/gcdong/blog/1120371

总结

以上是生活随笔为你收集整理的jquery和zepto冲突解决以及体会的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。