element.scrollTop在设置非常大的值时在浏览器中具有不同的行为

时间:2018-05-08 06:46:04

标签: javascript html

我想滚动到底部而不触发布局/重排

所以我尝试将一个固定的大数字(Number.MAX_SAFE_INTEGER或1000000000000000)设置为scrollTop,这会导致跨浏览器的不同行为:

  • Firefox(59.02)/ Safari(11.1):滚动到顶部
  • Chrome(66.0.3359.139):滚动到底部

这是Example

这是一个错误还是我出错了??

2 个答案:

答案 0 :(得分:1)

相反,您可以尝试使用scrollTop来计算页面的计算高度。 它更简单直接。 要遵循的步骤 1.找到文档/任何容器div的高度

  

var containerHeight = $(“#box”)。height();

  1. scrollTop with containerHeight。
  2.   

    document.querySelector('#box')。scrollTop = containerHeight;

    这肯定适用于任何行为不匹配。

答案 1 :(得分:0)

这可能是由于浏览器中元素的最大值不同造成的。例如,在Chrome中,限制为33554428像素。这里给出了完整的清单:What's the maximum pixel value of CSS width and height properties?