最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js獲取元素到可視區(qū)的距離、瀏覽器窗口滾動距離及元素距離瀏覽器頂部距離

 更新時間:2023年11月16日 15:01:29   作者:godlike-icy  
這篇文章主要給大家介紹了關(guān)于js獲取元素到可視區(qū)的距離、瀏覽器窗口滾動距離及元素距離瀏覽器頂部距離的相關(guān)資料,文中通過代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考借鑒價值,需要的朋友可以參考下

1. js獲取元素距離可視區(qū)的各種距離

const box=document.getElementById('box') // 獲取元素
const ct = box.getBoundingClientRect().top // 元素上邊距離頁面可視區(qū)上邊的距離
const cr = box.getBoundingClientRect().right // 元素右邊距離頁面可視區(qū)左邊的距離
const cb = box.getBoundingClientRect().bottom // 元素下邊距離頁面可視區(qū)上邊的距離
const cl = box.getBoundingClientRect().left // 元素左邊距離頁面可視區(qū)左邊的距離

2. js獲取瀏覽器窗口滾動距離

// 瀏覽器滾動距離
const dt = document.documentElement.scrollTop || document.body.scrollTop;

3. js獲取元素實際距離頁面距離(包括滾動距離)

(1).如果父輩元素中有定位的元素,那么就返回距離當前元素最近的定位元素邊緣的距離。

(2).如果父輩元素中沒有定位元素,那么就返回相對于body邊緣距離。

有些限制,對于滾動父元素設(shè)置為scroll:hidden時不生效。

 const box = document.getElementById('box')
 // 元素實際距離頁面頂部距離
 const bt = box.offsetTop;
 // 元素實際距離頁面左邊距離
 const bl = box.offsetLeft;
 // 元素實際距離頁面右邊距離
 const br = box.offsetRight;
 // 元素實際距離頁面底部距離
 const bb = box.offsetBottom;

附:獲取元素到頂部或左部的距離

document.querySelector(selectDom).offsetTop:獲取元素到頂部的距離
document.querySelector(selectDom).offsetLeft:獲取元素到左邊的距離

offsetTop:元素到offsetParent頂部的距離

offsetParent:距離元素最近的一個具有定位的祖宗元素(relative,absolute,fixed),若祖宗都不符合條件,offsetParent為body。如下圖所示:獲取child的offsetTop,圖1的offsetParent為father,圖2的offsetParent為body。

注意:只有元素show(渲染完成)才會計算入offsetTop,若是中間有元素數(shù)據(jù)需要異步獲取,會導(dǎo)致最終獲取的offsetTop值偏小

總結(jié) 

到此這篇關(guān)于js獲取元素到可視區(qū)的距離、瀏覽器窗口滾動距離及元素距離瀏覽器頂部距離的文章就介紹到這了,更多相關(guān)js獲取元素到可視區(qū)的距離內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

广南县| 九龙坡区| 抚松县| 五原县| 保定市| 辽宁省| 葫芦岛市| 上饶县| 海淀区| 古蔺县| 常宁市| 灯塔市| 贵州省| 和政县| 延安市| 筠连县| 凌源市| 白沙| 青海省| 耒阳市| 娄烦县| 托克逊县| 大英县| 郯城县| 太和县| 阳春市| 通榆县| 公安县| 和平区| 三门峡市| 桦南县| 普宁市| 齐齐哈尔市| 当阳市| 兴义市| 马边| 土默特左旗| 西乌| 郯城县| 大姚县| 黔西|