首页 web前端 js教程 关于scrollLeft,scrollTop的浏览器兼容性测试_javascript技巧

关于scrollLeft,scrollTop的浏览器兼容性测试_javascript技巧

May 16, 2016 pm 05:40 PM
兼容

今天在修改原群组弹窗的时候,发现弹窗在谷歌浏览器chrome下的位置跟在别的浏览器下不一样.逐一排查,肯定是在计算窗口位置的时候,少加了scrollTop这个值.在查看源代码的时候发现直接采用

document.documentElement.scrollTop这个,但在chrome下这个值为0.

在有文档声明的情况下,也就是第一行有个dtd声明,标准浏览器认识document.documentElement.scrollTop,可chrome竟然不认识这斯.在没有文档声明的情况下,chrome,safari还是可以读取到scrollTop值.因为chrome是通过document.body.scrollTop获取值的.

解决这个问题:不用去那么麻烦去判断浏览器类别,因为在不同情况下,document.body、document.documentElement都有可能获取到不同的值的特点.问题就很好解决.
在获取浏览器或某div的scrollTop或scrollLeft时,我封装了一个方法:

复制代码 代码如下:

var ueScroll=(function(){
//获取scrollX
function scrollX(ele){
var element=ele || document.body;
return element.scrollLeft || (document.documentElement && document.documentElement.scrollLeft);
}
//获取scrollY
function scrollY(ele){
var element=ele || document.body;
return element.scrollTop || (document.documentElement && document.documentElement.scrollTop);
}
return {
left:scrollX,
top:scrollY
}
})()

在DEMO中各浏览器获取scrollTop,scrollLeft值差异性调用的方式也很方便简单的,只要跟普通的对象调用方式一样.

这个也可以直接用在textarea或div获取scrollTop,scrollLeft上的,只要后面传进一个dom对象即可.
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Win10的最稳定版本 Win10的最稳定版本 Dec 25, 2023 pm 07:58 PM

很多用户都会遇到在操作电脑的时候卡顿或者是蓝屏,这个时候我们就需要找一个最为稳定的win10版本来进行操作,整体都是非常的好用的,可以让你日常使用更为流畅。史上最稳定的win10版本1、win10正版原装系统在这里用户可以使用简单的操作,系统经过优化,具有很强的稳定性、安全性、兼容性,用户可以按照步骤实现完美机器2、俄罗斯大神精简版win10经过严格的精简操作,删除了很多不必要的功能和服务。精简后,系统的CPU和内存占用率更低,运行速度更快。3、win10精简版1909安装多台不同硬件型号的电脑

Switch2能兼容Switch卡带吗? Switch2能兼容Switch卡带吗? Jan 28, 2024 am 09:06 AM

Switch2是任天堂在2023年科隆游戏展公布的新机型,一些玩家担心新出来的机型与之前版本的机型卡带会不会存在兼容性问题,下面我们一起来看看吧。switch2兼容switch卡带吗答:switch2不兼容switch卡带。Switch2卡带的介绍根据任天堂的生产链公司的消息称,Switch2可能会使用64GB的卡带。它由于性能更好,支撑更多的3A游戏大作的原因,需要更大卡带容量。因为很多的游戏作品需要阉割和压缩,才能塞进一张游戏卡带里面。而且Switch的卡带容易被复制游戏内容,所以更换新卡带

Win11是否支持动态壁纸 Win11是否支持动态壁纸 Jan 01, 2024 pm 06:41 PM

众所周知,win11一大特色就是自带安卓子系统,让我们不需要用模拟器就可以安装安卓软件,但也存在win11安卓应用卡顿的问题,这应该怎么解决呢。win11不兼容动态壁纸么:答:win11能兼容动态壁纸,如果用不了可能是软件或系统版本落后。如果是刚更新,可能是被系统壁纸覆盖了。1、如果是系统或软件版本落后,那么更新一下系统和动态壁纸软件即可。2、如果是被系统壁纸覆盖了,可以尝试打开“设置”3、接着进入“个性化”下的“背景”设置。4、然后将个性化设置背景改为“图片”5、修改完成后就能正常设置动态壁纸

win10兼容win7的设置方法介绍 win10兼容win7的设置方法介绍 Jan 03, 2024 pm 05:09 PM

很多朋友目前还在选择win7系统而不是win10系统的原因就是害怕其兼容性不好。其实,现在win10系统已经可以设置win7的兼容模式了,只需要在属性中就可以更改设置,下面就一起来看一下吧。win10怎么兼容win71、首先右键点击我们需要在win7系统下运行的程序,然后打开“属性”2、然后点击上方的“兼容性”,进入兼容性选项卡。3、在兼容模式下勾选“以兼容模式运行这个程序”4、然后就可以在下方的下拉菜单中选择“windows7”5、完了之后只需要点击“应用”或者点击“确定”就可以了。

Mingw编译的程序能否在Linux系统下正常运行? Mingw编译的程序能否在Linux系统下正常运行? Mar 19, 2024 pm 12:03 PM

Mingw编译的程序能否在Linux系统下正常运行?许多程序员在开发过程中常常会遇到这样一个问题,即在Windows系统下使用Mingw进行编译后的程序能否在Linux系统下正常运行。本文将详细探讨这个问题,并给出具体的代码示例。首先,我们需要了解Mingw是什么以及它和Linux系统之间的差异。Mingw是一个在Windows下的开发环境,用于编译Wind

解决d3dx9_43.dll不兼容的方法 解决d3dx9_43.dll不兼容的方法 Feb 24, 2024 pm 10:06 PM

d3dx9_43.dll不兼容怎么解决近年来,计算机和游戏的快速发展使得我们享受到了更多的娱乐和便利。然而,有时在安装或运行某些程序时,我们可能会遇到一些错误信息,例如“d3dx9_43.dll不兼容”。在这种情况下,我们应该如何解决这个问题呢?首先,让我们来了解一下这个错误信息的含义。d3dx9_43.dll是DirectX的一个系统文件,它是用于在操作系

介绍win10系统与ps版本的兼容性 介绍win10系统与ps版本的兼容性 Dec 30, 2023 pm 06:04 PM

ps也就是Photoshop,它是目前很多人都在使用的图片处理软件。很多朋友在使用ps前,可能会发现某些ps无法安装在win10系统中,怀疑是兼容的问题,因此今天小编就来给大家介绍一下win10兼容哪个版本的ps。win10兼容哪个ps答:现在几乎所有版本都能兼容,配置越高的电脑可以使用越新的版本。1、现在win10的兼容性已经很好了,只要配置足够,几乎可以兼容所有版本的ps。2、ps对于电脑配置的要求是比较高的,因此如果大家配置高的话可以使用最新版本的ps。3、如果配置不够的话,可以下载使用P

Win11安装及配置兼容网络点的详细指南 Win11安装及配置兼容网络点的详细指南 Jan 09, 2024 pm 02:50 PM

有不少网站用户们在浏览的时候都会需要使用旧版本的浏览器才能够使用,而新版本的需要添加兼容网点才可以进行使用,所以今天就给你们带来了win11添加兼容网点详细教程,快来学习一下吧。win11如何添加兼容网点1、首先打开系统中的IE浏览器,点击浏览器右上角小齿轮进入“设置”。2、然后在打开的设置菜单中,打开“兼容性视图设置”。3、在添加此网站下的编辑框中输入要添加的网址,然后点击“添加”。4、最后在下方就可以看到添加网址的域名了,关闭窗口即可直接访问。

See all articles