javascript dom元素位置相關(guān)方法

獲取dom元素的位置

function offset(el) {
  const rect = el.getBoundingClientRect();
  return {
    top: rect.top + document.body.scrollTop,
    left: rect.left + document.body.scrollLeft,
  };
}

獲取viewport的高度,寬度

瀏覽器窗口的視口(viewport)高度(以像素為單位),如果存在水平滾動條,

Window.innerHeight
window.innerWidth

判斷一個(gè)dom元素是否在viewport內(nèi)

ele.getBoundingClientRect().top > window.innerHeight // 元素在當(dāng)前屏下面

ele.getBoundingClientRect().bottom < 0 // 元素在當(dāng)前屏上面

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,131評論 1 92
  • 原文地址 在移動設(shè)備上進(jìn)行網(wǎng)頁的重構(gòu)或開發(fā),首先得搞明白的就是移動設(shè)備上的viewport了,只有明白了viewp...
    matthewm閱讀 1,601評論 0 4
  • 還有3個(gè)月,寶貝就2歲了,我急需知道2歲的孩子發(fā)展規(guī)律是什么。在他2歲到3歲的這一年里,父母應(yīng)該在他的成長之路上扮...
    用戶不在線閱讀 186評論 0 1
  • 當(dāng)快樂到來時(shí),我就不再思考人生 當(dāng)寂寞來臨時(shí),我就低頭努力讀書 ———出自網(wǎng)易云音樂《Variations on ...
    陽雨兒閱讀 179評論 0 0
  • 嚴(yán)格意義上講,這是我讀的第一本外國文學(xué)作品《解憂雜貨店》。學(xué)生時(shí)代不愿意看國外文學(xué)作品原因之一是覺得文化差異,...
    楊小堃閱讀 1,127評論 8 4

友情鏈接更多精彩內(nèi)容