【问题标题】:Bootstrap Carousel Not working and interfering with other jquery. Why is that?Bootstrap Carousel 不工作并干扰其他 jquery。这是为什么?
【发布时间】:2016-12-03 04:07:41
【问题描述】:

我已经尝试了很长一段时间来弄清楚如何插入引导轮播但没有运气。我不知道这是否与我插入脚本的方式有关。我下载了引导程序并将其放入我的文件夹中。我一个接一个地关注视频和在线教程,但没有运气。就我现在所拥有的,我看到不知何故,脚本干扰了我的导航,当您将鼠标悬停在单词上时出现的下拉信息现在被分开了,当它们过去直接位于单词下方时,之间没有填充或边距.我只是希望在我的导航正下方有一个轮播,同时使用我已经放置的 js 悬停在导航上时仍然允许导航下拉信息。

这是我的代码。有人可以帮我了解出了什么问题以及如何解决吗?

我的 html 是:

<!DOCTYPE html>
<html >
<head>
  <meta charset="UTF-8">
  <title>Gender Identity 2</title>



      <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
      <link rel="stylesheet" href="css/style.css">

</head>
<div class="container">
<header> 
  <img class="banner" src="images/banner.png"> 
  <div class="gender">
    <h3> Gender Identity </h3>
  </div>
</header>

<div id="wrap"> 

 <div id="tabwrap"> 
  <ul id="tabs">
   <li >
     <a href="#bacon" class="cyan">Terms</a>
   </li>

    <li>
     <a href="#batfish" class="green">Resources</a>
    </li> 

   <li>
     <a href="#tuna" class="lav">Culture</a>
    </li> 

    <li>
      <a href="#sausage" class="teal">Share</a>
    </li>

  </ul> 

  <div id="content"> 
    <div id="bacon" class="animated"> <p>Bacon ipsum dolor amet ribeye short loin leberkas andouille jerky meatloaf pork spare ribs corned beef. Andouille ham hock ground round, shankle pastrami rump hamburger filet mignon. </p></div>
    <div id="batfish" class="animated"><p>Batfish warmouth orbicular combtooth blenny; madtom, knifefish handfish rock beauty armorhead frogfish. Cownose ray pupfish pencilfish char fangtooth marblefish longfin dragonfish armored searobin hamlet.</p></div>
    <div id="tuna" class="animated"><p>Tuna, sculpin squeaker rice eel, lamprey triggerfish mooneye African glass catfish, loach wolf-eel yellowhead jawfish grass carp sea dragon neon tetra. Fingerfish forehead brooder sarcastic fringehead sixgill ray, scaly dragonfish bluntnose minnow.</p></div>
    <div id="sausage" class="animated"> <p>Sausage ground round sirloin ham hock t-bone tongue strip steak meatloaf landjaeger shankle andouille. Turducken doner brisket, shank salami shoulder kevin filet mignon ball tip chicken.</p> 
    </div> <!-- End of Div-->
   </div> <!-- End of Div-->
  </div><!-- End of Div-->

<!-- Carousel Code Start -->

<div id = "myCarousel" class = "carousel">

<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://placehold.it/1250x660" alt = "pic1" class = "img-responsive">
</div>


<div class = "item">
<img src="http://placehold.it/1250x660" alt = "pic1" class = "img-responsive">
</div>


<div class = "item">
<img src="http://placehold.it/1250x660" alt = "pic1" class = "img-responsive">
</div>

</div>

</div>

 <!-- <div class="main-caro">
    <img src="http://placehold.it/1250x660">

  </div> <!-- End of Div--> -->

<!-- Carousel Code End -->

</div> <!-- End of last Div-->

  <script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js'></script>
    <script src="js/index.js"></script>

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


</body>
</html>

我的css是:

@font-face { font-family: "aqua"; 
  src: url('aqua.ttf'); } 
@font-face { font-family: "axis"; 
  src: url('Axis Extrabold.otf'); } 
@font-face { font-family: "atami"; 
  src: url('Atami-Regular.otf'); } 



.container {
  width: 100%;
  margin: 0 auto;
}

.banner{
  display: block;
margin: 0 auto;
  width: 100%;
  min-width: 400px;
}

.gender {
  padding-top: 20px;
  padding-bottom: 20px;
 /* background-color: black; */
  margin-bottom: 20px;
}
.gender h3{
text-align: center;
 color: rgb(0,0,0); /* white*/
  animation: rgb infinite alternate;
  animation-duration: 15s;
  font-size: 2em;
}

@keyframes rgb {
  /* 0% will fallback to the default background-color of #rgb*/
 50% {color: rgb(29,185,226); /*blue*/ }
  75% {color: rgb(105,45,138); /*purple*/ }
  100% {color: rgb(237,49,147); /*pink*/}
}

h3{
font-family: "axis", sans-serif;
}

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;  margin: 0; padding: 0; }

#wrap { width: 75%; margin: 0 auto; min-width: 300px; max-width: 1400px; }

#tabwrap {
    background: #fff;
    overflow: hidden;
    width: 100%;
    min-height: 300px;
    margin: 0 auto;
    /*box-shadow: 0 0 20px #ddd;*/
    /*border: 1px solid #ddd;*/
}
#tabs { overflow: hidden;  }
#tabs li { list-style: none;
           font-family: "axis", sans-serif; }

#tabs li a {
    float: left;
    display: block;
    padding: 10px;
    color: black;
    width: 25%;
    text-decoration: none;
    text-align: center;
    /*border-right: 1px solid #555;
    border-left: 1px solid #888;*/
    font-size: 15px;

}

#tabs li a:hover { background: #666; }
#tabs li:first-child a { border-left: 0; }
#tabs li:last-child a { border-right: 0; }

#tabs li.current a {
    background: #fff;
    color: #666;

}

#tabs li.current a.cyan{
    background: rgb(245,166,200); /*pink*/
    color: white;
}

#tabs li.current a.green{
background-color: rgb(164,206,249); /*blue*/
    color: white;
}

#tabs li.current a.lav{
 background-color: rgb(200,200,255);
    color: white;
}


#tabs li.current a.teal{
 background-color: rgb(163,109,174);
    color: white;
}



#content > div {
    clear: both;
    padding: 20px;
    line-height: 19px;
    color: white;
    display: none;
font-family: "axis", sans-serif;

}
.animated {
    -webkit-animation-duration: 1s;
       -moz-animation-duration: 1s;
         -o-animation-duration: 1s;
            animation-duration: 2s;
}

#content .current { display: block }
#content p { margin: 0 0 20px 0;}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

#bacon {
  background-color: rgb(245,166,200); /*pink*/
}

#batfish {
  background-color: rgb(164,206,249); /*blue*/
}

#tuna {
    background-color: rgb(200,200,255);
}

#sausage {
    background-color: rgb(163,109,174);
  z-index: 1;
}

.main-caro img{
  display:block;
  width: 100%;
  margin: 0 auto;
  margin-top: -215px;
padding-top: 20px;
  padding-bottom: 20px;
  z-index:-1;
}

而我的 js 是:

$('#tabs li a').hover(function(e) {
    $('#tabs li, #content .current').removeClass('current').removeClass('fadeInLeft'); 
    $(this).parent().addClass('current');
    var currentTab = $(this).attr('href');
    $(currentTab).addClass('current fadeInLeft');
    e.preventDefault();

}, function(){
   $('#tabs li, #content .current').removeClass('current').removeClass('fadeInLeft');
});

再次,我已经下载了 bootstrap 并将其插入到我的主文件夹中,因为它是名为 bootstrap 的自己的文件夹,然后可以在其中找到 css 文件夹和 js 文件夹。

感谢您提供的任何帮助!

【问题讨论】:

    标签: javascript jquery html css bootstrap-carousel


    【解决方案1】:

    您是否尝试向最后加载的 jQuery 库添加 noConflict?我有一个类似的问题,我的轮播单独工作,但是当我将它添加到已经使用 jQuery 库的页面时,结果发现这些库没有很好地融合。

    您的代码正在加载两个 jQuery 库。

        <script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js'></script>
    

    然后

       <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    

    我打赌它需要添加一个 noConflict。

    jQuery.noConflict()

    【讨论】:

      【解决方案2】:

      你悬停的菜单链接和出现的悬停框分开的原因是来自 bootstrap.min.css 的样式规则

      ol, ul {
          margin-bottom: 10px;
          margin-top: 0px;
      }
      

      要让你的标签页底部有 0px 边距,请将其添加到你的 style.css:

      ul#tabs {
          margin-bottom: 0px;
      }
      

      我不确定为什么轮播不适合您。这个对我有用。也许它正在工作,但因为所有图像都相同,它看起来不像?

      这是一个plunker,已修复额外空间问题。

      编辑(为轮播问题添加解决方案):

      改变

      <div id="myCarousel" class="carousel">
      

      <div id="myCarousel" class="carousel slide">
      

      如果您希望轮播自动循环,则需要添加

      $(function() {
          $('.carousel').carousel();
      });
      

      到你的 javascript。

      【讨论】:

      • 感谢您对导航的帮助!我很感激。另一个问题:bootstrap css 是否也会导致轮播离导航这么远?两者之间似乎有大量的填充。我希望导航直接位于滑块上方,它们之间可能有 40 像素的空间。如果这有意义?
      • 导航和轮播之间的额外空间来自您的自定义样式规则之一:#tabwrap { min-height: 300px; } 所以只需删除 min-height 并添加 padding-bottom: 40px;
      • 在你问之前,要让悬停框出现在轮播顶部而不是向下推,请添加样式规则:#content { position: absolute; z-index:1; }
      • 非常感谢您提供的所有信息。但我只有最后一个问题。现在一切正常,但是,我的导航没有响应,在我缩放页面时和在移动设备上时离开屏幕。如何解决这个问题?
      • 这不是一个简单回答的问题。要手动执行此操作,请从谷歌搜索“css 媒体查询”开始。如果您想以引导方式进行操作,您可能还想看看v4-alpha.getbootstrap.com/layout/responsive-utilities
      猜你喜欢
      • 1970-01-01
      • 2011-12-15
      • 1970-01-01
      • 2012-03-04
      • 2021-12-27
      • 1970-01-01
      • 2014-09-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多