首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

jQuery中函数变量$冲突的解决方法

2012-08-13 
jQuery中函数变量$冲突的解决办法?最近项目中,使用jQuery发现其中的函数变量$与其它JS框架冲突。google后发

jQuery中函数变量$冲突的解决办法

?最近项目中,使用jQuery发现其中的函数变量$与其它JS框架冲突。google后发现一个解决办法:

var jQuery=jQuery.noConflict();

?????? 在使用 jQuery.noConflict();后,就只能使用jQuery变量访问jQuery对象。例如,在要用到$("div p")的地方,就必须换成jQuery("div p") .

?????? 在jQuery1.3.2中,解决函数变量“$”冲突问题,对JS类库的引入顺序没有特殊要求。只要jQuery.noConflict(true);在jQuery的引入后执行即可。

?jQuery.noConflict()函数的源码为:

noConflict: function( deep ) {

window.$ = _$;

if ( deep )

window.jQuery = _jQuery;

return jQuery;

}

创建一个新的别名用以在接下来的库中使用jQuery对象。

?????????jQuery 代码:

??????????????? var j = jQuery.noConflict();

???????? // 基于 jQuery 的代码

?????????????? ?j("div p").hide();

??????? // 基于其他库的 $() 代码

????????????? ?$("content").style.display = 'none';

?jQuery.noConflict(true)则不仅可以防止$冲突,还可以防止jQuery这个关键词冲突。

jQuery 代码:

?????? var j = jQuery.noConflict(true);

// 基于 jQuery 的代码

????? ?j("div p").hide();

?// 基于其他库的 $() 代码

????? $("content").style.display = 'none';

// 基于其他库(或版本)的

jQuery() 代码

???? jQuery("#abc").html("这种情况很少见!");

热点排行