JQuery和其他JavaScript库冲突的解决方式

“$”符号已经被其他的JavaScript库预先定义了,因此在JQuery中,“$”符号失去了原本预定义的含义,这将有可能导致脚本停止运行

<script language="javascript" type="text/javascript" 
		src="/js/datepicker/WdatePicker.js"></script>
<script src="/js/jquery.js" type="text/javascript"></script>
<script language="JavaScript" type="text/JavaScript">
jQuery.noConflict();
</script>

运行这个函数释放JQuery对“$”符号的控制,将“$”符号的控制权让渡给第一个实现它的JavaScript库,这有助于确保JQuery不会与其它JavaScript库产生冲突,在运行这个函数后,就只能使用“jQuery”字符串代替“$”符号访问JQuery对象,例如:使用jQuery("div p")代替$("div p")

jQuery.noConflict();
// 使用 jQuery
jQuery("div p").hide();
// 使用其他库的 $()
$("content").style.display = 'none';

还有一种写法,创建一个新的简写用来代替“$”符号:

var j = jQuery.noConflict();
// 基于 jQuery 的代码
j("div p").hide();
// 基于其他库的 $() 代码
$("content").style.display = 'none';

 

你可能感兴趣的:(JavaScript,jquery,noConflict方法)