单击向上或向下按钮时滚动div内容

时间:2013-06-26 15:02:16

标签: jquery html scroll

我想创建一个如下所示的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做到这一点?

2 个答案:

答案 0 :(得分:3)

我为你创建了两个jsFiddles。希望这是你想要的项目列表

你可以通过引入另一个容器div并调整高度/边距top&amp;底部滚动/显示下一个。

<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/

答案 1 :(得分:0)

可能this link对您有帮助吗?

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

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

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

希望这会对你有所帮助。