【问题标题】:jquery auto slider with prev/next带有上一个/下一个的 jquery 自动滑块
【发布时间】:2015-01-15 18:07:08
【问题描述】:

我看到了很多使用 jquery/css 的带有滑块的帖子。

我有一个数据库,我可以从中检索图像和文本的链接。

我想创建一个带有自动滚动的滑块类型的最新提要部分,就像在许多网站上看到的那样。

我在stackoverflow上看到了这个例子http://jsfiddle.net/uXn2p/1/

它使用溢出隐藏属性并动画滑动。

我添加了这段代码以使其自动化。

setInterval(function() {
 $(".list").delay( 800 ).animate({scrollLeft: "+=330"}, 'slow', "swing");
  $(".list").delay( 800 ).animate({scrollLeft: "+=330"}, 'slow', "swing");


 $(".list").delay( 800 ).animate({scrollLeft: "-=990"}, 'slow', "swing");

    }, 2000);

但是一旦这个动画开始,上一个/下一个按钮就会停止工作。我知道我做错了对 jquery 无效的事情。

这是什么? 我该如何纠正?

【问题讨论】:

    标签: javascript php jquery html css


    【解决方案1】:

    我已经对您的代码进行了相当多的调整,但我想我得到了您想要的东西。我离开了这个例子:http://jsfiddle.net/n8B2k/1/

    我将 html 更改为下面的内容,但看起来相同。我还添加了删除“上一个”按钮的功能,当它一直到左边时,删除“更多”按钮,当它一直到右边时(如果你不喜欢它,你可以删除或修改它) .

    <div id="slidesContainer">
      <div id="slideInner">
        <div class="slide">
            <div class="box">1</div>
            <div class="box">2</div>
            <div class="box">3</div>
        </div>
        <div class="slide">
            <div class="box">4</div>
            <div class="box">5</div>
            <div class="box">6</div>
        </div>
        <div class="slide">
            <div class="box">7</div>
            <div class="box">8</div>
            <div class="box">9</div>
        </div>
      </div>
    </div>
    <div id="slideShow">
      <button class="control" id="leftControl">prev</button>
      <button class="control" id="rightControl">more</button>
    </div>
    

    这不是您使用的确切动画,但您可以修改它。

    这是我的小提琴:http://jsfiddle.net/uXn2p/124/

    【讨论】:

      【解决方案2】:

      我修改了这个例子http://jsfiddle.net/uXn2p/1/。希望它可以帮助您解决问题。

      var myVar = setInterval(function() {
          $(".list").delay(800).animate({scrollLeft: "+=330"}, 'slow', "swing");
      }, 2000);
      
      $("#more").click(function() {
          clearInterval(myVar);
          $(".list").animate({scrollLeft: "+=330"}, 300, "swing");
          myVar = setInterval(function() {
              $(".list").delay(800).animate({scrollLeft: "+=330"}, 'slow', "swing");
          }, 2000);
      });
      
      $("#prev").click(function() {
          clearInterval(myVar);
          $(".list").animate({scrollLeft: "-=330"}, 300, "swing");
          myVar = setInterval(function() {
              $(".list").delay(800).animate({scrollLeft: "+=330"}, 'slow', "swing");
          }, 2000);
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-06-29
        • 1970-01-01
        • 1970-01-01
        • 2011-11-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多