使用JavaScript获取div标签的滚动位置

36

如何使用JavaScript获取包含在div标签中的滚动量?请提供示例。

我不想使用jQuery,仅使用JavaScript。


19
@Alex: "ReferenceError: invalid assignment left-hand side." 严肃地说,把 jQuery 称为 JavaScript 库是不准确的,因为两者有很大的区别。 - Chris Morgan
2个回答

39

尝试这段代码片段

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript">
        function scrollPos() {
            var div = document.getElementById("myDiv").scrollTop;
            document.getElementById("pos").innerHTML = div;
        }
    </script>
</head>
<body>
    <form id="form1">
    <div id="pos">
    </div>
    <div id="myDiv" style="overflow: auto; height: 200px; width: 200px;" onscroll="scrollPos();">
        Place some large content here
    </div>
    </form>
</body>
</html>

var div = document.getElementById("myDiv").scrollTop; 这在firefox中不起作用。 - user3467273

37

你使用scrollTop属性

var position = document.getElementById('id').scrollTop;

1
如果您正在水平滚动条中导航,则可能需要使用scrollLeft属性。 - Fabian Merchan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接