首頁 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= || document .body;
return element.scrollLeft || (document.documentElement && document.documentElement.scrollLeft);
}
//取得scrollY
function scrollY( ele || document.body;
return element.scrollTop || (document.documentElement && document.documentElement.scrollTop);
}
return {
left:scrollX, }
})()


在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.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 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、完了之後只需要點擊「應用」或點選「確定」就可以了。

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

d3dx9_43.dll不相容怎麼解決近年來,電腦和遊戲的快速發展使得我們享受了更多的娛樂和便利。然而,有時在安裝或執行某些程式時,我們可能會遇到一些錯誤訊息,例如「d3dx9_43.dll不相容」。在這種情況下,我們該如何解決這個問題?首先,讓我們來了解一下這個錯誤訊息的含義。 d3dx9_43.dll是DirectX的一個系統文件,它是用於在操作系

Linux系統是否相容於安卓軟體? Linux系統是否相容於安卓軟體? Mar 20, 2024 pm 02:27 PM

近年來,Android系統在行動裝置領域的普及率迅速增長,許多人開始關注在其他平台上是否也能運行安卓應用程式。 Linux作為常見的作業系統,受到不少人的青睞,那麼問題來了,Linux系統是否相容於安卓軟體呢?首先要明確的是,Linux系統與Android系統在核心上有一定的相似性,都是基於Linux核心的作業系統,因此從理論上來講,Linux系統是可以運行

Mingw編譯的程式能否在Linux系統下正常運作? Mingw編譯的程式能否在Linux系統下正常運作? Mar 19, 2024 pm 12:03 PM

Mingw編譯的程式能否在Linux系統下正常運作?許多程式設計師在開發過程中常常會遇到這樣一個問題,即在Windows系統下使用Mingw進行編譯後的程式能否在Linux系統下正常運作。本文將詳細探討這個問題,並給出具體的程式碼範例。首先,我們需要了解Mingw是什麼以及它和Linux系統之間的差異。 Mingw是Windows下的開發環境,用來編譯Wind

Win11安裝及設定相容網路點的詳細指南 Win11安裝及設定相容網路點的詳細指南 Jan 09, 2024 pm 02:50 PM

有不少網站用戶們在瀏覽的時候都會需要使用舊版本的瀏覽器才能夠使用,而新版本的需要添加兼容網點才可以進行使用,所以今天就給你們帶來了win11添加兼容網點詳細教程,來學習一下。 win11如何新增相容網點1、先開啟系統中的IE瀏覽器,點選瀏覽器右上角小齒輪進入「設定」。 2、然後在開啟的設定選單中,開啟「相容性視圖設定」。 3、在新增此網站下的編輯框中輸入要新增的網址,然後點選「新增」。 4.最後在下方就可以看到新增網址的網域名稱了,關閉視窗即可直接存取。

See all articles