仅使用scrollBy滚动div

时间:2015-10-15 08:58:56

标签: javascript html css scroll

我有一个脚本,可以在按钮点击时滚动窗口。工作正常,但我如何才能将其转换为目标div?我的意思是只滚动一个特定的div。 我试图放getElementById,但我没有成功。

是否可以scrollBy执行此操作?

<button onmousedown="skrull();" onmouseup="stop();" style="position:fixed;">Click to scroll <3</button>

<p>Some text and line breaks to enable scrolling!</p>

<script>
var skrullInterval;
function scrollWin() {
    window.scrollBy(0, 100);
}
skrull = function skree() {skrullInterval = setInterval(scrollWin, 100);}
function stop() {
    clearInterval(skrullInterval);
}
</script>

1 个答案:

答案 0 :(得分:0)

仅为窗口对象定义scrollBy()和scroll()。如果要滚动元素,应将scrollTop设置为所需的偏移量(绝对值,与scrollBy()不同;负值静默转换为0)。

element.scrollTop = 50;

来自MDN:

  

Element.scrollTop属性获取或设置像素数   元素的内容是垂直滚动的。

     

元素的scrollTop值是距离的距离的度量   element是其最顶层可见内容的顶部。当一个元素的时候   内容不会生成垂直滚动条,然后是其scrollTop   值为0.

scrollLeft也可以水平滚动。如果你必须处理从右到左的方向,请记住这一点:

  

请注意,如果元素的元素方向是rtl   (从右到左)然后当滚动条位于其时,scrollLeft为0   最右边的位置(在滚动内容的开头)然后   当你滚动到内容的末尾时,越来越消极。