有时为了准确定位一个元素,我们需要获取滚动条的位置,这种需求经常出现在 tooltip 和 拖放等应用中,其实这个技术很简单,关键是要考虑浏览器的兼容性,本文就是介绍这一问题的解决方法。
其实这段代码在之前的
“ 用 Javascript 实现锚点(Anchor)间平滑跳转” 一文已经介绍过了,但是由于这个需求并且经常用到,因此,本站专门发布此文介绍,方便查阅。
Javascript:
1 <script type="text/javascript">
2 // 说明:用 Javascript 获取滚动条位置等信息
3 // 来源 :ThickBox 2.1
4 // 整理 :CodeBit.cn ( http://www.CodeBit.cn )
5 function getScroll() {
6 var t, l, w, h;
7 if (document.documentElement && document.documentElement.scrollTop) {
8 t = document.documentElement.scrollTop;
9 l = document.documentElement.scrollLeft;
10 w = document.documentElement.scrollWidth;
11 h = document.documentElement.scrollHeight;
12 } else if (document.body) {
13 t = document.body.scrollTop;
14 l = document.body.scrollLeft;
15 w = document.body.scrollWidth;
16 h = document.body.scrollHeight;
17 }
18 return { t: t, l: l, w: w, h: h }; }
19 </script>