1. if (typeof window.pageYOffset != ’undefined’) {
2. bodyTop = window.pageYOffset;
3. } else if (typeof document.compatMode != ’undefined’ && document.compatMode != ’BackCompat’) {
4. bodyTop = document.documentElement.scrollTop;
5. }
6. else if (typeof document.body != ’undefined’) {
7. bodyTop = document.body.scrollTop;
8. }
# if (typeof window.pageYOffset != ‘undefined’) {
# bodyTop = window.pageYOffset;
# } else if (typeof document.compatMode != ‘undefined’ && document.compatMode != ‘BackCompat’) {
# bodyTop = document.documentElement.scrollTop;
# }
# else if (typeof document.body != ‘undefined’) {
# bodyTop = document.body.scrollTop;
# }
2. bodyTop = window.pageYOffset;
3. } else if (typeof document.compatMode != ’undefined’ && document.compatMode != ’BackCompat’) {
4. bodyTop = document.documentElement.scrollTop;
5. }
6. else if (typeof document.body != ’undefined’) {
7. bodyTop = document.body.scrollTop;
8. }
# if (typeof window.pageYOffset != ‘undefined’) {
# bodyTop = window.pageYOffset;
# } else if (typeof document.compatMode != ‘undefined’ && document.compatMode != ‘BackCompat’) {
# bodyTop = document.documentElement.scrollTop;
# }
# else if (typeof document.body != ‘undefined’) {
# bodyTop = document.body.scrollTop;
# }
其实这一大串代码在jQuery中有一行代码可以代替,那就是
var bodyTop = $(document).scrollTop();
经测试,如果是写成$(window).scrollTop()的话则在IE系列下是没有值的,万恶的jQuery API竟然没有scrollTop().
bodyTop = document.documentElement.scrollTop + document.body.scrollTop;
就可以了。
因为始终有一个为 0 ; 呵呵。
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/2276/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
最后编辑: jackxiang 编辑于2009-11-25 23:53
评论列表
2010-8-5 11:44 | 收拾收拾
分页: 1/1 1