carousel: function(){
var $carouselCr = $('#carousel'),
$tabCr = $('.carouselTabs', $carouselCr),
$itemCr = $('.carouselContents', $carouselCr),
tabAmount = (function(){
if($('a', $tabCr).length === $('.item', $itemCr).length){
return $('a', $tabCr).length;
}else{
throw "error: verschillend aantal tabs vs items";
}
})();
var i = tabAmount;
while(i--){
var item = $($('.item', $itemCr)[i]),
tab = $($('a', $tabCr)[i]);
console.log(item, tab);
$(tab).click(function(){
$('.item', $itemCr).hide();
$(item).show();
})
}
}
正如您所看到的,我試圖爲每個「選項卡」附加一個點擊事件,以選擇每個「項目」。我做錯了什麼。所有選項卡都引用第一項。循環中的變量
如果我在循環內記錄$('.item', $itemCr)[i]
它將返回所有不同的項目,而不僅僅是第一個。
簡體HTML結構
<div id="carousel" class="block">
<div class="carouselTabs">
<a href="#">
</a>
<!-- repeating -->
</div>
<div class="carouselContents">
<div class="item">
</div>
<!-- repeating -->
</div>
</div>
請出示你的HTML。 – 2012-01-13 14:40:37
第21行缺少分號。'})'to'});' – 2012-01-13 14:40:44
whats $ itemCr和$ tabCr? – Evan 2012-01-13 14:40:44