2013-04-24 51 views
0

使用下面的代碼,當我點擊MY BUTTON時,會顯示項目編號3。通過其Id而不是索引來滑動項目 - .carousel(索引號)

$('#myButton').click(function() { 
    $('#myCarousel').carousel(3); 
}); 

-

<div id="myCarousel" class="carousel slide"> 
    <div class="carousel-inner"> 
     <div class="active item">0</div> 
     <div class="item">1</div> 
     <div class="item">2</div> 
     <div id="myItem3" class="item">3</div> 
    </div> 
    <!-- Carousel nav --> 
    <a class="carousel-control left" href="#myCarousel" data-slide="prev">&lsaquo;</a> 
    <a class="carousel-control right" href="#myCarousel" data-slide="next">&rsaquo;</a> 

    <a id="myButton">MY BUTTON</a> 
</div> 

有沒有辦法通過他的身份證顯示的項目,不是他的指數?

服用點這樣的:

$('#myButton').click(function() { 
    $('#myCarousel').carousel($('#myItem3')); 
}); 

回答

2

你可以做類似$("#myItem4").prevAll("div").length + 1

這將讓以前所有的兄弟姐妹,指望他們,並添加1 ...在它獲得它自己的指數是兄弟姐妹

編輯:我剛剛發現一些文檔,並且旋轉木馬具有從0開始的索引。我假設它是基於1的,因爲你說.carousel(4)帶你到了第4項。由於它是基於0的,請刪除+ 1 ...

$('#myButton').click(function() { 
    $('#myCarousel').carousel($("#myItem4").prevAll("div").length); 
}); 
+1

非常聰明的解決方案!它的工作原理假定輪播js根據div內的子級的順序分配(1,2,3,..)索引。 – 2013-04-24 01:35:36