这篇文章需要技术复核。如何帮忙。
这篇翻译不完整。请帮忙从英语翻译这篇文章。
Element.scrollLeft
属性可以读取或设置元素滚动条到元素左边的距离。
注意如果这个元素的内容排列方向(direction
) 是rtl
(right-to-left) ,那么滚动条会位于最右侧(内容开始处),并且scrollLeft值为0。此时,当你从右到左拖动滚动条时,scrollLeft会从0变为负数(这个特性在chrome浏览器中不存在)。
语法
//获取滚动条到元素左边的距离 var sLeft = element.scrollLeft;
sLeft 是一个整数,代表元素滚动条距离元素左边多少像素。
//设置滚动条滚动了多少像素 element.scrollLeft = 10;
scrollLeft
可以是任意整数,然而:
- 如果元素不能滚动(比如:元素没有溢出),那么
scrollLeft
的值是0。 - 如果给
scrollLeft
设置的值小于0,那么scrollLeft
的值将变为0。 - 如果给
scrollLeft
设置的值大于元素内容最大宽度,那么scrollLeft
的值将被设为元素最大宽度。
例子
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> #container { border: 1px solid #ccc; height: 100px; overflow: scroll; width: 100px; } #content { background-color: #ccc; width: 250px; } </style> <script> document.addEventListener('DOMContentLoaded', function () { var button = document.getElementById('slide'); button.onclick = function () { document.getElementById('container').scrollLeft += 20; }; }, false); </script> </head> <body> <div id="container"> <div id="content">Lorem ipsum dolor sit amet.</div> </div> <button id="slide" type="button">Slide</button> </body> </html>
规范
Specification | Status | Comment |
---|---|---|
CSS Object Model (CSSOM) View Module scrollLeft |
Working Draft |