Javascript:在div上执行的scrollBy函数

时间:2015-03-12 14:23:21

标签: javascript scroll

我有一个overflow: scroll;的div我想放一个按钮。当您按下它时,div的内容会滚动。

类似的东西:



function scrollDiv() {
  document.getElementById("d").scrollBy(100, 100);
}

<div id="d">
  <p>Click the button to scroll by 100px.</p>
  <button onclick="scrollDiv()">Click me to scroll!</button>
</div>
&#13;
&#13;
&#13;

这适用于FF,但不适用于Chrome。在Chrome中我得到了

  

未捕获的TypeError:undefined不是函数

scrollBy函数似乎被定义为window函数,所以我猜这是问题所在,并且它在FF中工作而不是标准函数。

但还有另一种方法吗?我不是在使用jQuery,而是我不愿意。

2 个答案:

答案 0 :(得分:27)

你可以试试这个:

function scrollDiv(){
    document.getElementById("d").scrollTop += 100;
    document.getElementById("d").scrollLeft += 100;
}

答案 1 :(得分:0)

不是

function scrollDiv(){
   document.getElementById("d").scrollTop += 100;
   document.getElementById("d").scrollLeft += 100;
}

你不会

document.getElementById("d").scrollBy({
   top: 100,
   left: 100,
   behaviour: 'smooth'
})