2018年1月18号,听着川哥的独情者,进入状态,记下jquery中如何处理污染的全局变量。
我们知道,jquery占用了两个全局变量,$和jQuery,意思就是我们不能再引用jquery文件的网页中申明以上两个变量,否则会发生全局冲突,覆盖掉jquery中原先的代码段。
例如:
在引入jquery文件的网页中,我自己定义了一个对象,取名为$,与jquery的全局变量$发生冲突,这时候假如我们$("div").css("color","red"); ,$是不能用的,因为我定义的$对象覆盖了jquery中定义的$--获取标签元素。那么这样,问题就来 了?我不想改动我自己定义的变量,但是又想获取元素,又不想自己再去封装一个获取元素的方法,怎么处理?这涉及到jquery如何处理污染的全局变量。一般有两个方法。
1、jquery中的$是不能用了,但是还有一个呢。哈,不得不说jquery的聪明之处了,还有一个全局变量就是jQuery,作用跟$一样,也是获取元素。只不过因为字母过长,被人们嫌弃了点。
2、假如jQuery也被人们占用了呢?那么就用到noConflict()方法来处理。就是申明一个变量接收noConflict()返回的全局变量$即可。申明的那个变量就是原先jquery中定义个全局变量$。
网友评论