Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Bootstrap Carousel-inner "autoplay"

Can some one help me out? There are a few things wrong here I know. Why do i have to link bootstrap.min.js at the end of the header and at the bottom of the page. Ive tried using one at a time but it doesnt work. The next thing is that I want carousel to start when I load the page and when I click the controllers; not just when i click the controllers.

    <head>
        <title>The James Baldwin School</title>
        <link href="Framework/css/bootstrap.css" rel="stylesheet" type="text/css">
        <link href="Main.css" rel="stylesheet" type="text/css">
    </head>

    <body>
        <header>
        <div class="navbar-wrapper">
  <div class="container">
    <div id="navtop" class="navbar navbar-inverse navbar-static-top">

        <div class="navbar-header">
        <a class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </a>
        <a class="navbar-brand" href="#">The James Baldwin School</a>
        </div>
        <div class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li class="active"><a href="#">Home</a></li>
            <li><a href="#about">About</a></li>
            <li><a href="#contact">Contact</a></li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Parents <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><a href="#">Separated link</a></li>
                <li><a href="#">One more separated link</a></li>
              </ul>
            </li>

            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Students <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><a href="#">Separated link</a></li>
                <li><a href="#">One more separated link</a></li>
              </ul>
            </li>

            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Teachers <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><a href="#">Separated link</a></li>
                <li><a href="#">One more separated link</a></li>
              </ul>
            </li>
          </ul>
        </div>



    </div>
  </div><!-- /container -->
</div><!-- /navbar wrapper -->

        <!--- Javascript Bootstrap --->
        <script src="Framework/js/bootstrap.min.js"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</header>


<!-- Carousel
================================================== -->
<div id="myCarousel" class="carousel slide">
  <!-- Indicators -->
  <ol class="carousel-indicators">
    <li data-target="#myCarousel" data-slide-to="0" class="active"></li>
    <li data-target="#myCarousel" data-slide-to="1"></li>
    <li data-target="#myCarousel" data-slide-to="2"></li>
  </ol>
  <div class="carousel-inner">
  <div class="item active">
      <img src="http://1.bp.blogspot.com/-BUrT0CP-6nQ/U1prUuv6VjI/AAAAAAAAFbY/a6PUNgNhSWM/s1600/1500x500-New-York-Skyline-Twitter-Header0017.jpg" style="width:100%" class="img-responsive">
      <div class="container">
        <div class="carousel-caption">
          <h1>Bootstrap 3 Carousel</h1>
          <p>Pictures slide with overlapping words</p>
          <p><a class="btn btn-lg btn-primary" href="http://getbootstrap.com">Learn More</a>
        </p>
        </div>
      </div>
    </div>
    <div class="item">
      <img src="http://1.bp.blogspot.com/-jBZKbiHI_2U/U1pszgzFAbI/AAAAAAAAFcI/8xrxWuBse9o/s1600/1500x500-New-York-Skyline-Twitter-Header0024.jpg" class="img-responsive">
      <div class="container">
        <div class="carousel-caption">
          <h1>Each Slide can be different</h1>
          <p>I just need some one to pick the pictures and words</p>
          <p><a class="btn btn-large btn-primary" href="#">Learn more</a></p>
        </div>
      </div>
    </div>
    <div class="item">
      <img src="http://mooxidesign.com/wp-content/uploads/2014/04/New-york-1500x500.jpg" class="img-responsive">
      <div class="container">
        <div class="carousel-caption">
          <h1>Percentage-based sizing</h1>
          <p>This Site is fully responsive and adjusts to the size of the browser your using. Meaning that it looks great on smart-phones</p>
          <p><a class="btn btn-large btn-primary" href="#">Browse gallery</a></p>
        </div>
      </div>
    </div>
  </div>
  <!-- Controls -->
  <a class="left carousel-control" href="#myCarousel" data-slide="prev">
    <span class="icon-prev"></span>
  </a>
  <a class="right carousel-control" href="#myCarousel" data-slide="next">
    <span class="icon-next"></span>
  </a>  
</div>       
<!-- /.carousel -->


<!-- Marketing messaging and featurettes
================================================== -->
<!-- Wrap the rest of the page in another container to center all the content. -->

<div class="container marketing">

  <!-- Three columns of text below the carousel -->
<div id="about">
  <div class="row">
    <div class="col-md-4 text-center">
      <img class="img-circle" src="http://placehold.it/140x140">
      <h2>Brady Smith</h2>
      <p>Principal Co-Director</p>
      <p><a class="btn btn-default" href="#">View details »</a></p>
    </div>
    <div class="col-md-4 text-center">
      <img class="img-circle" src="http://placehold.it/140x140">
      <h2>Josh Heisler</h2>
      <p>Teacher Co-Director</p>
      <p><a class="btn btn-default" href="#">View details »</a></p>
    </div>
    <div class="col-md-4 text-center">
      <img class="img-circle" src="http://placehold.it/140x140">
      <h2>Christine Olsen</h2>
      <p>Admissions</p>
      <p><a class="btn btn-default" href="#">View details »</a></p>
    </div>
  </div><!-- /.row -->
</div>

  <!-- START THE FEATURETTES -->



  <!-- /END THE FEATURETTES -->


  <!-- FOOTER -->
  <footer>
    <p class="pull-right"><a href="#">Back to top</a></p>
    <p>This site was created by Isaac Perez. · <a href="http://www.google.com">Check it out</a></p>
  </footer>

  </div><!-- /.container -->

</body>
        <script src="Framework/js/bootstrap.min.js"></script>
        <script src="Framework/js/jquery-2.1.3.min.js"></script>
        <script type="text/javascript">// <![CDATA[
        var $ = jQuery.noConflict(); $(document).ready(function()  { $('#myCarousel').carousel({ interval: 3000, cycle: true }); });
        // ]]></script>
</html>
like image 946
xXDarksnakeXx Avatar asked Dec 20 '14 23:12

xXDarksnakeXx


2 Answers

I've just set up a Fiddle containing the carousel of your example, jQuery version 2.1.3, bootstrap.js and bootstrap.css as external resources and your script to initalize the carousel

$('#myCarousel').carousel({
  interval: 3000,
  cycle: true
}); 

and it's working - it starts when the page loads and the controllers are working, too. That it's not working for you can be an issue of loading bootstrap before jQuery - jQuery has to be included before bootstrap. To check if this is the case, see if there are any error / console message like "Error: Bootstrap's JavaScript requires jQuery". Also you're including 2 different jQuery versions - 1.11.1 and 2.1.3. If not necessary, e.g. for some plugins relying on an older jQuery version, try just to load the latest one.
In addition, you're placing script tags between the closing body and html tags which can work, but isn't valid - see link, script tags between </body> and </html> for details.
As reference for using different jQuery versions in case this would really be necessary, you can check http://api.jquery.com/jquery.noconflict/

like image 156
matthias_h Avatar answered Nov 01 '22 05:11

matthias_h


You could do it through the HTML with the data-interval tag. Insert it into <div id="myCarousel" class="carousel slide"> so it looks like this:

<div id="myCarousel" class="carousel slide" data-interval="3000">

The value of 3000 can be adjusted to a higher number to decrease speed and a lower number to increase speed.

like image 24
tonyynot Avatar answered Nov 01 '22 07:11

tonyynot