javascript - 旋转木马幻灯片和导航栏更改之间的 Bootstrap 延迟

标签 javascript jquery html css twitter-bootstrap

我有一个像这样的 Bootstrap 轮播:

enter image description here

这是代码:

<div id="catCrsou" class="carousel slide" data-ride="carousel">
  <div class="carousel-inner">
    <div class="item active">
      <img src="http://192.168.1.108/forushgah_datamanager//galleryPics/13073307011029.jpg" style="width: 100%;" onclick="">
    </div>
    <div class="item">
      <img src="http://192.168.1.108/forushgah_datamanager//galleryPics/24555488815560.jpg" style="width: 100%;" onclick="">
    </div>
  </div>
  <!-- End Carousel Inner -->
  <ul class="nav nav-pills nav-justified">
    <li class="bt active" data-target="#catCrsou" data-slide-to="0">
      <a href="#" title="عنوان مقاله" dir="rtl">عنوان مقاله</a></li>
    <li class="bt" data-target="#catCrsou" data-slide-to="1">
      <a href="#" title="عنوان 2" dir="rtl">عنوان 2</a></li>
  </ul>
</div>

这是javascripts代码

$(document).ready(function() {
  $('#catCrsou').carousel({
    interval: 4000
  });

  var clickEvent = false;
  $('#catCrsou').on('click', '.nav a', function() {
    clickEvent = true;
    $('.nav li').removeClass('active');
    $(this).parent().addClass('active');
  }).on('slid.bs.carousel', function(e) {
    if (!clickEvent) {
      var count = $('.nav').children().length - 1;
      var current = $('.nav li.active');
      current.removeClass('active').next().addClass('active');
      var id = parseInt(current.data('slide-to'));
      if (count == id) {
        $('.nav li').first().addClass('active');
      }
    }
    clickEvent = false;
  });

  $("#catCrsou li").hover(function() {
    var goto = Number($(this).attr('data-slide-to'));
    $("#catCrsou").carousel(goto);
  });
});

问题是大约2分钟后,carousel的滑动速度比nav pilles快,有延迟。 我希望下一张幻灯片始终与 nav pills 更改同时出现。

我该如何解决?

最佳答案

试试这个 -

     $(document).ready(function() {
     $('#catCrsou').carousel({
       interval: 4000
     });

   //  var clickEvent = false;
   //  $('#catCrsou').on('click', '.nav a', function() {
   //    clickEvent = true;
   //    $('.nav li').removeClass('active');
   //    $(this).parent().addClass('active');
   //  }).on('slid.bs.carousel', function(e) {
   //    if (!clickEvent) {
   //      var count = $('.nav').children().length - 1;
   //      var current = $('.nav li.active');
   //      current.removeClass('active').next().addClass('active');
   //      var id = parseInt(current.data('slide-to'));
   //      if (count == id) {
   //        $('.nav li').first().addClass('active');
   //      }
   //    }
   //    clickEvent = false;
   //  });

     $('#catCrsou').bind('slide.bs.carousel', function (e) {
       var currentIndex = $('div.active').index();
       $(".nav").find(".active").removeClass("active");
       if(currentIndex != 0) {
           $('.nav li').first().addClass('active');
       }
       else {
           $('.nav li').last().addClass('active');
       }

       console.log(currentIndex);
   });

     $("#catCrsou li").hover(function() {
       var goto = Number($(this).attr('data-slide-to'));
       $("#catCrsou").carousel(goto);
     });
   });  

关于javascript - 旋转木马幻灯片和导航栏更改之间的 Bootstrap 延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38025352/

相关文章:

jquery - 用 fancybox 显示图像

javascript - 使用 jQuery 获取 <TD> 单元格的 'co-ordinates'

javascript - text() 不会附加到同一行的第二个 <span>

javascript - 仅获取用户单击的文本值

javascript - Node Js 和 Angular Js 如何从服务器向客户端发送请求

jquery - 我有一个 89x89px 的重复背景方形图像,我想在鼠标悬停时将其更改为随机彩色图像

jquery - 单击打开相邻的 div

javascript - 如何根据容器的某些尺寸限制将图像宽度设置为 100%?

javascript - Javascript可以动态创建多维数组吗

javascript - 函数未定义