js使用心得——避免jQuery与其他js库使用$符号冲突
[文章作者:磨延城 转载请注明原文出处: https://mo2g.com/view/44/ ]
使用jQuery做前端开发,都习惯了使用默认的$符号,因为简单快捷,但就是因为开发者们对“$”符号太依赖了,以至于很多js代码库都使用“$”符号来做代言人(简化的变量),这就导致了在加载多个JS库做开发的时候,“$”变量被覆盖替换,这一点让磨途歌会很不习惯,于是磨途歌开始需找解决冲突的途径。
使用jQuery做前端开发,都习惯了使用默认的$符号,因为简单快捷,但就是因为开发者们对“$”符号太依赖了,以至于很多js代码库都使用“$”符号来做代言人(简化的变量),这就导致了在加载多个JS库做开发的时候,“$”变量被覆盖替换,这一点让磨途歌会很不习惯,于是磨途歌开始需找解决冲突的途径。
根据分析,jQuery最原始的写法应该如下。
jQuery(document).ready(function() { jQuery('body').click(function() { alert(1); }); });
但是这种写法每次引用jQuery对象的时候都要书写jQuery作为前缀,很繁琐,所以为了简化编码量,jQuery官方做了相应的调整,就声明了“$”这个变量,它等价于jQuery这个变量。于是有了下边的简写方法:
$(document).ready(function() { $('body').click(function() { alert(1); }); });
后来又出现了更简洁的写法
$(function() { $('body').click(function() { alert(1); }); });
但如果加载了多个Js库,上边的写法就可能会出现$符号被别的js库占用覆盖,导致写好的jQuery代码无法正常使用,磨途歌经过反复测试,发现了一个比较合适的解决方案。
下边给出的是磨途歌使用的兼容多个js库的jQuery写法:
jQuery(function($){ $('body').click(function() { alert(1); }); });
我来说两句: