日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 編程語言 正文

react事件對象無法獲取offsetLeft,offsetTop,X,Y等元素問題及解決_React

作者:前端常春藤 ? 更新時間: 2022-10-03 編程語言

react事件對象無法獲取offsetLeft,offsetTop,X,Y等元素

react獲取到的事件缺少了部分一些屬性,和原生事件對象不同

如圖:

解決方法

事件中使用:

e.nativeEvent

這是一個比較坑的地方,應(yīng)該是react的事件對象沒有包含一些原生eventDom的屬性。

獲取offsetLeft,offsetTop值不準的原因

遇坑總結(jié)

決定offsetLeft、offsetTop的唯一因素是當前節(jié)點和offsetParent節(jié)點的偏移關(guān)系。

也就是說只與offsetParent有關(guān),那么怎么確定一個元素的offsetParent呢?

一個元素的offsetParent可以是以下其中之一:

  • 1.具有position屬性(除了static值以外,而position默認值為static)的最近父元素;
  • 2.最近的table,table cell父元素;
  • 3.根節(jié)點元素;
  • 4.設(shè)置了動畫transform:translate的最近父元素;

所以當計算二個元素(已經(jīng)渲染到頁面)的相對距離時,遍歷所有二個元素之間的所有Parent元素offsetTop之和即可,二個元素之間的所有Parent與Child之間一定要確保是對應(yīng)的offsetParent。?

原文鏈接:https://blog.csdn.net/m0_46995864/article/details/124977236

欄目分類
最近更新