我用 jQuery 编写了一个简单的滑动画廊。这是一个狭窄的容器,里面有一张宽桌子,通过 .animate()改变它的“左”属性
在 Firefox、Safari 和 IE8 上运行良好。但是我在使用 Internet Explorer 7 及以下版本时遇到问题。
弹出一条消息错误说'脚本错误。行:4619。字符:4。错误:无效参数。网址:http ://www.imagina.com.uy/bentancorleborgne/?page_id=2
该行只能在 jQuery.js 文件中。因为它是唯一一个有 6k+ 行的文件。
所以我想知道。这到底是怎么回事!!
仅当我按箭头为画廊设置动画时才会弹出错误。所以我留下脚本的代码,以防你能从那里得到一些线索。
任何帮助或线索都会得到很好的评价。提前致谢!!
$(document).ready(function() {
var tablaWidth = parseFloat($('.imagenesWrapper table').width());
var tdWidth = parseFloat( $('.imagenesWrapper table tr td').outerWidth() ) + parseFloat( $('.imagenesWrapper table tr td').css('marginRight') );
var cantCeldas = tablaWidth / tdWidth - 1;
var posActual = 0;
var leftCSS = 1;
if(cantCeldas==0) {
$('#leftArrow').hide();
$('#rightArrow').hide();
}
else
$('#rightArrow').show();
$('#rightArrow').click(function() {
if(leftCSS < tablaWidth) {
posActual += 1;
leftCSS = moverTabla(posActual, cantCeldas, tdWidth);
}
});
$('#leftArrow').click(function() {
if(posActual > 0) {
posActual -= 1;
leftCSS = moverTabla(posActual, cantCeldas, tdWidth);
}
});
});
function moverTabla(pos, cantidad, tdWidth) {
var leftCSS = pos * tdWidth;
$('.imagenesWrapper table').animate( {left: '-' + leftCSS +'px'}, 'slow');
mostrarOcultarFlechas(pos, cantidad);
return leftCSS;
}
function mostrarOcultarFlechas(pos, cantidad) {
//mostrar-ocultar flecha izquierda
if(pos==0)
$('#leftArrow').hide();
else if($('#leftArrow').css('display') == 'none')
$('#leftArrow').show();
//mostrar-ocultar flecha derecha
if(pos==cantidad)
$('#rightArrow').hide();
else if($('#rightArrow').css('display') == 'none')
$('#rightArrow').show();
}