1

我有以下html

<div id="carousel-2" class="carousel slide">
   <div class="carousel-inner" >
     <div class="item active">
       <img src="img/slide-2.jpg" alt="">
     </div>
     <div class="item">
       <img src="img/slide-3.jpg" alt="">
    </div>
  </div>
</div>

<div class="features-text">
Pellentesque egestas dignissim accumsan. Vivamus vitae lacinia orci.
</div>

我想将features-text颜色更改为不同的颜色,例如当第二个项目处于活动状态时,颜色应为蓝色。下面是我的 jQuery 代码:

if($('#carousel-2 .carousel-inner').find('.item').eq(1).hasClass('active')) {
    $('.features-text').css('color', 'blue');
}

它不工作。任何解决方案?

4

2 回答 2

1

我简化了一点,但这对我有用:

http://jsfiddle.net/2PWYJ/

if($('#carousel-2 .carousel-inner').children('.item').hasClass('active')) {
     $('.features-text').css('color', 'blue');
}
于 2013-06-04T18:24:19.553 回答
0

您可以像这样订阅 Bootstrap 轮播中的“滑动”事件:

$(function() {
    var $carousel = $('#carousel-2'),
        $items = $carousel.find('.item'),
        $text = $('.features-text');

    $carousel.on('slid', function() {
        var index_ = $items.index($items.filter('.active')),
            newColor = 'red';

        switch(index_) {
            case "0":
                newColor = 'blue';
                break;
            case "1":
                newColor = 'red';
                break;
        }
        $text.css('color', newColor);
    });
});

没有尝试上面的代码,但你应该得到方向:-)

于 2013-06-04T19:18:17.350 回答