2013-06-11 99 views
0

如何從數組中獲取值並在.append()內調用它?jQuery追加變量數組

在此代碼中,我試圖從內容中抽取內容的數組是titles,並將其附加到類別.activeSlide的列表項中。但是,我將其懸停在UNDEFINED之上。

$(document).ready(function() { 
    var titles = ["Title 1", "Title 2", "Title 3"]; 
    $("#slideshow").before("<ul id='slideshow-nav'></ul>") 
    .cycle({ 
     fx:       "scrollVert", 
     rev:       "scrollVert", 
     speed:      600, 
     timeout:     0, 
     pagerEvent:    "mouseover", 
     pager:      "#slideshow-nav", 
     pagerAnchorBuilder: function (index) { 
      return "<li>" + titles[index] + "</li>"; 
     }  
    }); 
    $("#slideshow-nav li").hover(function(index) { 
     $(this).parent().children(".activeSlide").append("<a href='#'>" + titles[index] + "</a>"); 
    }, function() { 
     $("a").remove(); 
    }); 
}); 
+0

只需使用'標題[I]'其中'i'爲0,1或2(您的陣列的指數) –

+0

如果我想調用相同的值即工作在每個列表項上,但它需要根據索引順序進行更改,具體取決於哪個列表項具有'.activeSlide'類。 –

回答

2
$("ul li").hover(function() { 
    var ind = $(this).index(); 
    if ($(this).hasClass('activeSlide')) { 
     $(this).append("<a href='#'>" + titles[ind] + "</a>"); 
    } 
}, function() { 
    $("ul li a").remove(); 
}); 

FIDDLE

+0

一次調用所有三個值。 –

+0

@ElliPetersen你可以更清楚你想做什麼,看來我不太明白它的意思。 – Spokey

+0

有三個列表項目。當你將鼠標懸停在每一個上面時,就會添加'.activeSlide'類。所以當每個列表項都有'.activeSlide'類時,它需要顯示與其索引號相對應的數組值......這有意義嗎?例如,當我將鼠標懸停在「標題1」上時,應在其旁邊顯示第二個「標題1」,但不會顯示其他兩個值。 –