直接在生命週期函式中獲取值為null
方式一:再加個延遲200毫秒的函式獲取
1、建立選擇器
const query = taro.createselectorquery();
將選擇器的選取範圍更改為自定義元件component內.(初始時,選擇器僅選取頁面範圍的節點,不會選取任何自定義元件中的節點)
const query = taro.createselectorquery().in(this);
2、查詢
獲取單個
query.select('選擇器').boundingclientrect((res)=>)
獲取集合
query.selectall('選擇器').boundingclientrect((res)=>).exec()
3、獲取dom
方式一:ref
ref只能修改,無法返回節點資訊
方式二:目前支援canvas的獲取。
query.select('選擇器').node((res)=>)
4、在滾動檢視中獲取相關滾動資料
節點必須是 scroll-view/scrollview 或者 viewport,返回 nodesref 對應的 selectorquery。
query.select('選擇器').selectviewport().scrolloffset(function(res)).exec()
**示例:
import taro from
'@tarojs/taro'
import
from
'@tarojs/components'
import react,
from
'react'
import
'./index.less'
/** *
* *
* *
* */class
recommend
extends
component
_madeimage
(str,index)
/>
<
/view>
}componentdidmount()
).exec()
},200)
}_getheight
=(nodes,childnodes)
=>
else})
;}render()
=this
.state;
return
('r-c'
>
'r-t'
>為你推薦<
/text>
'r-i' id=
'ri' ref=
name=
'ww'
>)}
<
/view>
<
/view>)}
}export
default recommend
獲取DOM節點
getelementbyid 通過id獲取標籤元素 getelementsbyname 通過標籤名獲取標籤元素 getelementsbytagname index 通過標籤名獲取標籤元素集合 getattribute 獲取屬性值 getelementsbyclassname 通過class獲取一組...
JS獲取DOM節點
父節點id為target,有兩個字節點,獲取target下所有字節點 const childrens document.getelementbyid target getelementtagname div 得出的childrens是乙個陣列,陣列中的元素是target下的子節點。childnode...
Dom 獲取節點方法
元素節點 html標籤 img body input div 文字節點 文字部分 屬性節點 標籤內的屬性 注釋節點 1.document 頁面中最大的節點,有且只有乙個。不屬於元素節點,是頁面中所有節點的容器。根節點。2.html 頁面中最大的元素節點。根元素節點。3.元素節點 html標籤 4.文...