【问题标题】:Scroll the div content when clicking a up or down button [duplicate]单击向上或向下按钮时滚动div内容[重复]
【发布时间】:2013-06-23 19:22:24
【问题描述】:

我想创建一个如下所示的 div:

<div id="upButton">&nbsp;</div>
<div id="divWithExcessiveContent" style="overflow: hidden; height: 20px;">
    content number 1<br/>
    content number 2<br/>
    content number 3<br/>
    content number 4<br/>
    ...
    content number 100<br/>
</div>
<div id="downButton">&nbsp;</div>

根据上面的代码,#divWithExcessiveContent 的内容应该只是直到,也许是"content number 20",其余的都是隐藏的。当#downButton被点击时,div的内部应该向下滚动,显示"content number 20"下面的内容。

如何使用 jQuery 做到这一点?

【问题讨论】:

    标签: jquery html scroll


    【解决方案1】:

    大概this link对你有帮助?

    它使您可以将元素滚动到某个位置,例如

    $('#divWithExcessiveContent').scrollTo( {top:'-=100px', left:'+=100'}, 800 );
    

    请注意它是一个 jQuery 插件,所以你必须检查你的 jQuery 是否已经拥有它们。

    希望对你有所帮助。

    【讨论】:

      【解决方案2】:

      我为你创建了两个 jsFiddles。希望这是您想要对您的项目列表执行的操作

      您可以通过引入另一个容器 div 并调整顶部和底部的高度/边距以滚动/显示下一个来做到这一点。

      <div id="upButton">&nbsp;</div>
      <div id="container" style="overflow: hidden;height: 40px;">
      <div id="divWithExcessiveContent" >
          content number 1<br/>
          content number 2<br/>
          content number 3<br/>
          content number 4<br/>
          content number 5<br/>
          ...
          content number 100<br/>
      </div>
      </div>
      <br>
      <div id="downButton" style="border:solid 1px;width:50px;">Button</div>
      

      jquery:

      var i = 0;
      $('div#downButton').click( function() {
          i = i - 20;
         $('div#divWithExcessiveContent').css('margin-top', i + 'px');
        });
      

      i) 类似滚动的行为演示

      http://jsfiddle.net/vendettamit/4xuV4/

      ii) 可展开的 div 以显示下一个元素演示

      http://jsfiddle.net/vendettamit/kmHPk/

      【讨论】:

        猜你喜欢
        • 2012-10-27
        • 1970-01-01
        • 1970-01-01
        • 2015-05-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-18
        相关资源
        最近更新 更多