一个滚动循环图片的脚本问题
此脚本兼容IE6,IE9,火狐,谷歌,不支持IE7,IE8.。求大神指点到底哪里出了问题
JS
/***glide.layerGlide((oEventCont,oSlider,sSingleSize,sec,fSpeed,point);*@param auto type:bolean 是否自动滑动 当值是true的时候 为自动滑动*@param oEventCont type:object 包含事件点击对象的容器*@param oSlider type:object 滑动对象*@param sSingleSize type:number 滑动对象里单个元素的尺寸(width或者height) 尺寸是有point 决定*@param second type:number 自动滑动的延迟时间 单位/秒*@param fSpeed type:float 速率 取值在0.05--1之间 当取值是1时 没有滑动效果*@param point type:string left or top*/var glide = new function () { function $id(id) { return document.getElementById(id); }; this.layerGlide = function (auto, oEventCont, oSlider, sSingleSize, second, fSpeed, point) { var oSubLi = $id(oEventCont).getElementsByTagName('li'); var interval, timeout, oslideRange; var time = 1; var speed = fSpeed var sum = oSubLi.length; var a = 0; var delay = second * 1000; var setValLeft = function (s) { return function () { oslideRange = Math.abs(parseInt($id(oSlider).style[point])); $id(oSlider).style[point] = -Math.floor(oslideRange + (parseInt(s * sSingleSize) - oslideRange) * speed) + 'px'; if (oslideRange == [(sSingleSize * s)]) { clearInterval(interval); a = s; } } }; var setValRight = function (s) { return function () { oslideRange = Math.abs(parseInt($id(oSlider).style[point])); $id(oSlider).style[point] = -Math.ceil(oslideRange + (parseInt(s * sSingleSize) - oslideRange) * speed) + 'px'; if (oslideRange == [(sSingleSize * s)]) { clearInterval(interval); a = s; } } } function autoGlide() { for (var c = 0; c < sum; c++) { oSubLi[c].className = ''; }; clearTimeout(interval); if (a == (parseInt(sum) - 1)) { for (var c = 0; c < sum; c++) { oSubLi[c].className = ''; }; a = 0; oSubLi[a].className = "active"; interval = setInterval(setValLeft(a), time); timeout = setTimeout(autoGlide, delay); } else { a++; oSubLi[a].className = "active"; interval = setInterval(setValRight(a), time); timeout = setTimeout(autoGlide, delay); } } if (auto) { timeout = setTimeout(autoGlide, delay); }; for (var i = 0; i < sum; i++) { oSubLi[i].onmouseover = (function (i) { return function () { for (var c = 0; c < sum; c++) { oSubLi[c].className = ''; }; clearTimeout(timeout); clearInterval(interval); oSubLi[i].className = "active"; if (Math.abs(parseInt($id(oSlider).style[point])) > [(sSingleSize * i)]) { interval = setInterval(setValLeft(i), time); this.onmouseout = function () { if (auto) { timeout = setTimeout(autoGlide, delay); }; }; } else if (Math.abs(parseInt($id(oSlider).style[point])) < [(sSingleSize * i)]) { interval = setInterval(setValRight(i), time); this.onmouseout = function () { if (auto) { timeout = setTimeout(autoGlide, delay); }; }; } } })(i) } }}glide.layerGlide(true, 'icon_num_top', 'show_pic_top', 237, 2, 0.1, 'top');#picBox{width:746px; height:234px; overflow:hidden; position:relative;}#picBox ul#show_pic{ margin:0; padding:0; list-style:none; height:234px; width:3050px; position:absolute;}#picBox ul#show_pic li{ float:left; margin:0; padding:0; height:234px;}#picBox ul#show_pic li img{ display:block;}#icon_num{ position:absolute; bottom:0px; right:10px;}#icon_num li{ float:left; background:url(http://pc.qq.com/pc/images/flashbutton.gif) no-repeat -15px 0;width:15px; height:15px; list-style:none; color:#39F; text-align:center; cursor:pointer; padding:0; margin:0;margin-right:5px;}#icon_num li:hover,#icon_num li.active{ background:url(http://pc.qq.com/pc/images/flashbutton.gif) no-repeat 0 0; color:#fff;}#picBox_top{width:746px; height:234px; margin:auto; position:relative; overflow:hidden;}#picBox_top ul#show_pic_top{ margin:0; padding:0; list-style:none; height:234px; width:746px; position:absolute;}#picBox_top ul#show_pic_top li{ float:left; margin:0; padding:0; height:234px;}#picBox_top ul#show_pic_top li img{ display:block;}#icon_num_top{ position:absolute; bottom:0px; right:10px;}#icon_num_top li{ float:left; background:url(http://pc.qq.com/pc/images/flashbutton.gif) no-repeat -15px 0;width:15px; height:15px; list-style:none; color:#39F; text-align:center; cursor:pointer; padding:0; margin:0;margin-right:5px;}#icon_num_top li:hover,#icon_num_top li.active{ background:url(http://pc.qq.com/pc/images/flashbutton.gif) no-repeat 0 0; color:#fff;}