js冲突怎么解决?

JavaScript08

js冲突怎么解决?,第1张

jQuery多个版本或和其他js库冲突主要是常用的$符号的问题,主要解决办法如下:

方法一:

<script type="text/javascript">jQuery.noConflict() //将变量$的控制权让渡给prototype.jsjQuery(function(){ //使用jQueryjQuery("p").click(function(){

alert( jQuery(this).text() )

})

})

$("pp").style.display = 'none' //使用prototype</script>

方法二:

<script type="text/javascript">var $j = jQuery.noConflict() //自定义一个比较短快捷方式$j(function(){ //使用jQuery$j("p").click(function(){

alert( $j(this).text() )

})

})

$("pp").style.display = 'none' //使用prototype</script>

方法三:

<script type="text/javascript">jQuery.noConflict() //将变量$的控制权让渡给prototype.js(function($){ //定义匿名函数并设置形参为$$(function(){ //匿名函数内部的$均为jQuery$("p").click(function(){ //继续使用 $ 方法alert($(this).text())

})

})

})(jQuery) //执行匿名函数且传递实参jQuery$("pp").style.display = 'none' //使用prototype</script>

你好,jquery和其他插件冲突的问题其实很简单就解决了。但是这2个插件貌似都是同一类型的插件,为什么要同时使用呢?解决方法:

调用下$.noConflict(),之后使用jQuery时$符号换成jQuery.

js效果多数是控制样式改变来形成的。你看看两种效果实用的class名字有没有相同的。然后,改了就好。另外。如果两种效果都是基于jquery实现了。 那么在js中最好引入一次jquery就好。 引入两次的话就会出现前面的效果不起作用的状况。