网页上两种js冲突怎么办???

JavaScript029

网页上两种js冲突怎么办???,第1张

很简单,把冲突的部分改了。

1.对象名不要重复。

2.调用页ID不要重复。

3.最容易出问题的部分在这:onload事件。

如果两个JS内都出现onload事件,那就会冲突。

你可用“查找”Ctrl+F键,找出所有的onload事件并且把onload事件调用的函数名或执行代码放到一起。

如:

第一种

window.onload=wgbf_moveit

第二种

window.onload=function(){

执行代码。。。。。

}

=================================

上面常见的onload事件使用方法。

你可以把onload事件写在一起。如下:

window.onload=function(){

wgbf_moveit//第一种:函数名

执行代码。。。。。//第二种:执行代码

}

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

冲突的原因:第一个中$被定义为jquery的对象了,而你第二个中有再次定义这样的全局变量,变量冲突了,解决的方法有两个:

第一种,把你的第二个改成(推荐方法):

<script

type="text/javascript">

$(function

()

{

$("#nav").next().click(function(){

$(this).toggle()

})

})

</script>

第二种,把你的第二个改成(不推荐):

<script

type="text/javascript">

function

$$(id){return

document.getElementById(id)}//注意改成$$

window.onload

=

function(){

$$("nav").onclick

=

function(e){

var

src

=

e?e.target:event.srcElement

if(src.tagName

==

"H3"){

var

next

=

src.nextElementSibling

||

src.nextSibling

next.style.display

=

(next.style.display

=="block")?"none":"block"

}

}

}

</script>

有什么不明白的可以继续追问我。