Carousel在Bootstrap中不工作,jQuery问题

Carousel not working in Bootstrap, jQuery issue?

本文关键字:jQuery 问题 工作 Bootstrap Carousel      更新时间:2023-09-26

Bootstrap新手,不懂Java/jQuery。我在http://bootsnipp.com/snipps/carousel-extended找到了这个很酷的片段,但不知怎么搞砸了。从视觉上看,一切都很好,但幻灯片没有移动,点击缩略图也没有改变。我看了一遍html,什么都没发现,这让我觉得可能是javascript的问题?有人发现我遗漏了什么吗?这可能是个愚蠢的错误。谢谢!

<body>
    <div id="wrapper"> 
    <div class="container">
            <!--logo-->
            <header>
                    <div class="row">
                        <div class="span4 logo">
                        <a href="index.html"><img src="img/marlin-logo.png"></a>
                    </div>
                        <div class="span3 socialbox pull-right">
                        <div class="social-icons">
                         <a id="facebook" href="#"><img src="img/social_icons/facebook.png"></a>
                         <a href="#"><img src="img/social_icons/twitter.png"></a>
                         <a href="#"><img src="img/social_icons/flickr.png"></a>
                         <a href="#"><img src="img/social_icons/pinterest.png"></a>
                         <a href="#"><img src="img/social_icons/instragram.png"></a>
                         <a href="#"><img src="img/social_icons/mail.png"></a>
                         </div><!--end social-icons --> 
                    </div><!--end span3 -->                     
                </div><!--end row -->   
            </header>

            <!--Nav-->  
            <div class="navbar navbar-inverse">

                <div class="navbar-inner">
                        <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                        </a>

                        <div class="nav-collapse collapse">
                            <ul class="nav">
                               <li class="divider-vertical"></li>
                                <li><a href="index.html">Home</a></li>
                                <li class="divider-vertical"></li>
                                <li class="active"><a href="about.html">About</a></li>
                                <li class="divider-vertical"></li>
                                <li><a href="contact.html">Contact</a></li>
                                <li class="divider-vertical"></li>
                                <li class="dropdown">
                                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Components<b class="caret"></b></a>
                                    <ul class="dropdown-menu">
                                        <li><a href="#">Action</a></li>
                                        <li><a href="#">Another action</a></li>
                                        <li><a href="#">Something else here</a></li>
                                        <li class="divider"></li>
                                        <li class="nav-header">Nav header</li>
                                        <li><a href="#">Separated link</a></li>
                                        <li><a href="#">One more separated link</a></li>
                                    </ul>
                                </li>
                               <li class="divider-vertical"></li>
                            </ul>
                    </div>
                </div>
            </div>
            <!--end Nav-->
      </div>
        <!--end container-->

        <div class="container">
                        <!-- Slider -->
                        <div class="row-fluid">
                                <div class="span12" id="slider">
                                        <!-- Top part of the slider -->
                                        <div class="row-fluid">
                                                <div class="span8" id="carousel-bounding-box">
                                                        <div id="myCarousel" class="carousel slide">
                                                                <!-- Carousel items -->
                                                                <div class="carousel-inner">
                                                                        <div class="active item" data-slide-number="0"><img src="http://placehold.it/770x300&text=one" /></div>
                                                                        <div class="item" data-slide-number="1"><img src="http://placehold.it/770x300&text=two" /></div>
                                                                        <div class="item" data-slide-number="2"><img src="http://placehold.it/770x300&text=three" /></div>
                                                                        <div class="item" data-slide-number="3"><img src="http://placehold.it/770x300&text=four" /></div>
                                                                        <div class="item" data-slide-number="4"><img src="http://placehold.it/770x300&text=five" /></div>
                                                                        <div class="item" data-slide-number="5"><img src="http://placehold.it/770x300&text=six" /></div>
                                                                </div>
                                                                <!-- Carousel nav -->
                                                                <a class="carousel-control left" href="#myCarousel" data-slide="prev">‹</a>
                                                                <a class="carousel-control right" href="#myCarousel" data-slide="next">›</a>
                                                        </div>
                                                </div>
                                                <div class="span4" id="carousel-text"></div>
                                                <div style="display: none;" id="slide-content">
                                                        <div id="slide-content-0">
                                                                <h2>Slider One</h2>
                                                                <p>Lorem Ipsum Dolor</p>
                                                                <p class="sub-text">October 24 2012 - <a href="#">Read more</a></p>
                                                        </div>
                                                        <div id="slide-content-1">
                                                                <h2>Slider Two</h2>
                                                                <p>Lorem Ipsum Dolor</p>
                                                                <p class="sub-text">October 24 2012 - <a href="#">Read more</a></p>
                                                        </div>
                                                        <div id="slide-content-2">
                                                                <h2>Slider Three</h2>
                                                                <p>Lorem Ipsum Dolor</p>
                                                                <p class="sub-text">October 24 2012 - <a href="#">Read more</a></p>
                                                        </div>
                                                        <div id="slide-content-3">
                                                                <h2>Slider Four</h2>
                                                                <p>Lorem Ipsum Dolor</p>
                                                                <p class="sub-text">October 24 2012 - <a href="#">Read more</a></p>
                                                        </div>
                                                        <div id="slide-content-4">
                                                                <h2>Slider Five</h2>
                                                                <p>Lorem Ipsum Dolor</p>
                                                                <p class="sub-text">October 24 2012 - <a href="#">Read more</a></p>
                                                        </div>
                                                        <div id="slide-content-5">
                                                                <h2>Slider Six</h2>
                                                                <p>Lorem Ipsum Dolor</p>
                                                                <p class="sub-text">October 24 2012 - <a href="#">Read more</a></p>
                                                        </div>
                                                </div>
                                        </div>
                                </div>
                        </div> <!--/Slider-->
                        <div class="row-fluid hidden-phone" id="slider-thumbs">
                                <div class="span12">
                                        <!-- Bottom switcher of slider -->
                                        <ul class="thumbnails">
                                                <li class="span2">
                                                        <a class="thumbnail" id="carousel-selector-0">
                                                                <img src="http://placehold.it/170x100&text=one" />
                                                        </a>
                                                </li>
                                                <li class="span2">
                                                        <a class="thumbnail" id="carousel-selector-1">
                                                                <img src="http://placehold.it/170x100&text=two" />
                                                        </a>
                                                </li>
                                                <li class="span2">
                                                        <a class="thumbnail" id="carousel-selector-2">
                                                                <img src="http://placehold.it/170x100&text=three" />
                                                        </a>
                                                </li>
                                                <li class="span2">
                                                        <a class="thumbnail" id="carousel-selector-3">
                                                                <img src="http://placehold.it/170x100&text=four" />
                                                        </a>
                                                </li>
                                                <li class="span2">
                                                        <a class="thumbnail" id="carousel-selector-4">
                                                                <img src="http://placehold.it/170x100&text=five" />
                                                        </a>
                                                </li>
                                                <li class="span2">
                                                        <a class="thumbnail" id="carousel-selector-5">
                                                                <img src="http://placehold.it/170x100&text=six" />
                                                        </a>
                                                </li>
                                        </ul>
                                </div>
                        </div>
</div>
</div><!--end container-->

            <div id="footer">
                <p>&copy; 2013 Blue Marlin Template designed by <a href="http://www.jannahill.com" target="_blank">Janna Hill</a> | All Rights Reserved. </p>
            </div>
            <!-- end footer -->
    </div>
    <!-- end wrapper  -->

<!-- start: Java Script -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="js/bootstrap.js"></script>
<script src="js/flexslider.js"></script>
<script src="js/carousel.js"></script>
<!-- end: Java Script -->

<script>
  jQuery(document).ready(function($) {
        $('#myCarousel').carousel({
                interval: 5000
        });
        $('#carousel-text').html($('#slide-content-0').html());
        //Handles the carousel thumbnails
        $('[id^=carousel-selector-]').click( function(){
                var id_selector = $(this).attr("id");
                var id = id_selector.substr(id_selector.length -1);
                var id = parseInt(id);
                $('#myCarousel').carousel(id);
        });

        // When the carousel slides, auto update the text
        $('#myCarousel').on('slid', function (e) {
                var id = $('.item.active').data('slide-number');
                $('#carousel-text').html($('#slide-content-'+id).html());
        });

});
</script>

您的HTML工作正常,因此很可能对所需javascript文件的引用是不正确的。我在http://jsfiddle.net/markusm/Tf6S7/1/上创建了一个jsFiddle。我所做的只是使用您的代码并添加对所需Twitter Bootstrap CSS和JavaScript文件的引用。你需要做的是:

添加
 <link rel="stylesheet" type="text/css" href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-combined.min.css">

<head> -部分(如果您还没有该引用)。

而不是JavaScript引用你使用到目前为止(块之间的<!-- start: Java Script --><!-- end: Java Script -->)添加以下内容:

<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/js/bootstrap.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" ></script>

@Jannak我有一个工作演示,您可以在这里找到。