前提:两段代码都能单独运行
成都创新互联公司专注于新市网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供新市营销型网站建设,新市网站制作、新市网页设计、新市网站官网定制、小程序开发服务,打造新市网络公司原创品牌,更为您提供新市网站排名全网营销落地服务。
查看两段代码是否有
1.全局变量冲突;
2.全局Function名称冲突;
3.事件触发冲突;
var browse = window.navigator.appName.toLowerCase();
var MyMar;
var speed = 1; //速度,越大越慢
var spec = 3; //每次滚动的间距, 越大滚动越快
var minOpa = 100; //滤镜最小值
var maxOpa = 100; //滤镜最大值
var spa = 2; //缩略图区域补充数值
var w = 0;
spec = (browse.indexOf("microsoft") -1) ? spec : ((browse.indexOf("opera") -1) ? spec * 10 : spec * 20);
function $_(e) {
return document.getElementById(e);
}
function goleft() {
$_('photos').scrollLeft -= spec;
}
function goright() {
$_('photos').scrollLeft += spec;
}
function setOpacity(e, n) {
if (browse.indexOf("microsoft") -1) e.style.filter = 'alpha(opacity=' + n + ')';
else e.style.opacity = n / 100;
}
$_('goleft').style.cursor = 'pointer';
$_('goright').style.cursor = 'pointer';
$_('mainphoto').onmouseover = function () {
setOpacity(this, maxOpa);
}
$_('mainphoto').onmouseout = function () {
setOpacity(this, minOpa);
}
$_('mainphoto').onclick = function () {
location = this.getAttribute('name');
}
$_('goleft').onmouseover = function () {
this.src = 'images/goleft2.gif';
MyMar = setInterval(goleft, speed);
}
$_('goleft').onmouseout = function () {
this.src = 'images/goleft.gif';
clearInterval(MyMar);
}
$_('goright').onmouseover = function () {
this.src = 'images/goright2.gif';
MyMar = setInterval(goright, speed);
}
$_('goright').onmouseout = function () {
this.src = 'images/goright.gif';
clearInterval(MyMar);
}
window.onload = function () {
setOpacity($_('mainphoto'), minOpa);
var rHtml = '';
var p = $_('showArea').getElementsByTagName('img');
for (var i = 0; i p.length; i++) {
w += parseInt(p[i].getAttribute('width')) + spa;
setOpacity(p[i], minOpa);
p[i].onclick = function () {
location = this.getAttribute('name');
}
p[i].onmouseover = function () {
setOpacity(this, maxOpa);
$_('mainphoto').src = this.getAttribute('rel');
$_('mainphoto').setAttribute('name', this.getAttribute('name'));
setOpacity($_('mainphoto'), maxOpa);
}
p[i].onmouseout = function () {
setOpacity(this, minOpa);
setOpacity($_('mainphoto'), minOpa);
}
rHtml += 'img src="' + p[i].getAttribute('rel') + '" width="0" height="0" alt="" /';
}
$_('showArea').style.width = parseInt(w) + 'px';
var rLoad = document.createElement("div");
$_('photos').appendChild(rLoad);
rLoad.style.width = "1px";
rLoad.style.height = "1px";
rLoad.style.overflow = "hidden";
rLoad.innerHTML = rHtml;
}
第二个 JS 这样就行。
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
很简单,把冲突的部分改了。
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;//第一种:函数名
执行代码。。。。。//第二种:执行代码
}
我曾经遇到过jquery库和其它库冲突的情况,建议你把两个库加载的位置调一下,分别把两个库加载到使用它的功能代码块前面试试看..也或者直接就换换前后的位置试试.
把第一段的 window.onload = RegLayers 去掉
再把第二段的 window load=GetNowDateTime(); 去掉
然后在最下面 加上
window.onload = function(){
RegLayers();
GetNowDateTime();
}