jquery:设置alt引用不正常

时间:2011-08-14 03:29:48

标签: jquery

以下脚本计算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'));     
});     
});

0 个答案:

没有答案