以下脚本计算UL中Li的数量,通过图像的宽度(目前已修复)进行动画显示包含div的left属性,查看当前显示的img的alt标记,解析进入无序列表并用动态UL的内容重写div的html。它还会更新href位置。
除了一件事,这一切都有效:
初始加载后,第一次单击“下一个”/灰色箭头时,下一个列表时间(图像)将滑入视图,但不会更新替代文本以反映有关该项目的注释。
如果我第二次点击,动画会继续正常,然后alt文本最终会改变..除了它是上一张图像的信息...所以我得到一张后面,最后图像用完了我得到一张额外点击,显示最后一个alt标记信息。
我正在寻找的是:加载页面获取,解析并格式化第一个列表项的alt标记信息(所有这些都是图像),然后单击下一个箭头,该图像滑出视图,下一个一个出现,三个独立的div的名称,描述和href链接得到更新。
我只是不知道我到底错过了什么...启动变量中有什么东西? (哦......我意识到这只是针对“下一个”/前进移动箭头设置解析/格式化数据)
代码:
$(document).ready(function(){
//Define the animation speed for the Carousel
var speed = 200;
var start = 0;
//for the first explantion to get parsed.
function spliceAndDice(){
var theFirst = $("#slider1 img").attr('alt').split('|');
var theFirstAlt = theFirst;
$('.templateExplanation').html('<ul class="altDescription">' + '<li>' + theFirstAlt[0] + '</li>' + '<li>' + theFirstAlt[1] + '</li>' + '<li>' + theFirstAlt[2] + '</li>' +'</ul>');
$('.linkedPDF a').attr('href','1.html');
};
spliceAndDice();
$('#navPrev').click(function(){
start == 0 ? start = 0 : move=start+385;
start < 0 ? start = 0 : move=0;
start = move;
$('#carousel ul').animate({marginLeft:move}, speed);
$('.templateExplanation').text($($("#slider1 img")[start/-385]).attr('alt'));
$('.linkedPDF a').attr('href',$($("#slider1 a")[start/-385]).attr('href'));
});
//check for last left position and set it to last left to stop
$('#navNext').click(function(){
start == ($("#slider1 li").length-1)*-385 ? move = start : move=start-385;
var theOne = ($($("#slider1 img")[start/-385]).attr('alt').split('|'));
$('#carousel ul').animate({marginLeft:move}, speed);
start = move;
var theAlt = theOne;
$('.templateExplanation').html('<ul class="altDescription">' + '<li>' + theAlt[0] + '</li>' + '<li>' + theAlt[1] + '</li>' + '<li>' + theAlt[2] + '</li>' +'</ul>');
$('.linkedPDF a').attr('href',$($("#slider1 a")[start/-385]).attr('href'));
});
});