最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

js獲取元素相對(duì)窗口位置的實(shí)現(xiàn)代碼_javascript技巧

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 21:27:40
文檔

js獲取元素相對(duì)窗口位置的實(shí)現(xiàn)代碼_javascript技巧

js獲取元素相對(duì)窗口位置的實(shí)現(xiàn)代碼_javascript技巧:JS獲取元素的offsetTop,offsetLeft等屬性 obj.clientWidth //獲取元素的寬度 obj.clientHeight //元素的高度 obj.offsetLeft //元素相對(duì)于父元素的left obj.offsetTop //元素相對(duì)于父元素的top obj.offsetWidth //元素的寬
推薦度:
導(dǎo)讀js獲取元素相對(duì)窗口位置的實(shí)現(xiàn)代碼_javascript技巧:JS獲取元素的offsetTop,offsetLeft等屬性 obj.clientWidth //獲取元素的寬度 obj.clientHeight //元素的高度 obj.offsetLeft //元素相對(duì)于父元素的left obj.offsetTop //元素相對(duì)于父元素的top obj.offsetWidth //元素的寬

JS獲取元素的offsetTop,offsetLeft等屬性

obj.clientWidth //獲取元素的寬度

obj.clientHeight //元素的高度
obj.offsetLeft //元素相對(duì)于父元素的left
obj.offsetTop //元素相對(duì)于父元素的top
obj.offsetWidth //元素的寬度
obj.offsetHeight //元素的高度

區(qū)別:

clientWidth = width + padding
clientHeight = height + padding
offsetWidth = width + padding + border
offsetHeight = width + padding + border
offset比client多了border的寬度

之前也寫過一篇JS關(guān)于獲取元素位置的文章:JS獲取元素的offsetTop,offsetLeft等屬性,我們可以通過offsetTop和offsetLeft屬性獲取元素相對(duì)窗口的位置,但offsetTop和offsetLeft屬性都是相對(duì)于父元素定位的,而通常需要獲取位置的元素都不是在最外層,所以遍歷上級(jí)元素的offset相關(guān)屬性少不了。那效率就成問題了。

好在瀏覽器給我提供了相應(yīng)的接口getBoundingClientRect,這個(gè)方法最早出現(xiàn)在IE瀏覽器中,后來的瀏覽器也跟著支持了這個(gè)方法,而且還更加完善,IE中只能獲取到元素的left,top,bottom,right的屬性,而后面的現(xiàn)代瀏覽器還能獲取到元素的width和

Chrome Firefox (Gecko) Internet Explorer Opera Safari
1.0 3.0 (1.9) 4.0 (Yes) 4.0

這里要注意的是,bottom是元素底部相對(duì)于窗口頂部的距離,而不是像css里面position的bottom相對(duì)于窗口底部,同理,rihgt屬性是元素最右邊相對(duì)于窗口左邊的距離。

原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明: 轉(zhuǎn)載自前端開發(fā)

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

js獲取元素相對(duì)窗口位置的實(shí)現(xiàn)代碼_javascript技巧

js獲取元素相對(duì)窗口位置的實(shí)現(xiàn)代碼_javascript技巧:JS獲取元素的offsetTop,offsetLeft等屬性 obj.clientWidth //獲取元素的寬度 obj.clientHeight //元素的高度 obj.offsetLeft //元素相對(duì)于父元素的left obj.offsetTop //元素相對(duì)于父元素的top obj.offsetWidth //元素的寬
推薦度:
標(biāo)簽: 獲取 元素 窗口
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top