getNodeInfo(){
//初始化 ps:在组件中使用this.createSelectorQuery() || wx.createSelectorQuery().in(this)
const query = wx.createSelectorQuery();
//选择一个节点,获取这个节点的width,height,top,bottom,left,right等信息
query.select('.node').boundingClientRect(res => {
console.log(res)
})
//获取显示区域(窗口)的scrollLeft和scrollTop
query.selectViewport().scrollOffset(res => {
console.log(res)
})
//获取scroll-view组件的scrollLeft和scrollTop
query.select('.scrollView').scrollOffset(res => {
console.log(res)
})
//目前仅支持 Video、Canvas、LivePlayer、Map 组件的context获取
query.select('#myVideo').context(res => {
console.log(res)
})
//获取一个节点的指定信息,如
query.select('#myVideo').fields({
dataset: true,
size: true, // width,height
rect:true, // top,bottom,left,right
scrollOffset: true, // scrollLeft,scrollTop
properties: ['scrollX', 'scrollY'], // attr属性,但id class style 和事件绑定的属性值不可获取
computedStyle: ['margin', 'backgroundColor'], // css属性
context: true, // 仅支持 Video、Canvas、LivePlayer、Map 组件
},res=>{
res.dataset // 节点的dataset
res.width // 节点的宽度
res.height // 节点的高度
res.top // 节点的上边距到显示窗口顶部的距离
res.bottom // 节点的下边距到显示窗口顶部的距离
res.left // 节点的左边距到显示窗口左边的距离
res.top // 节点的右边距到显示窗口左边的距离
res.scrollLeft // 节点的水平滚动位置
res.scrollTop // 节点的竖直滚动位置
res.scrollX // 节点 scroll-x 属性的当前值:如scroll/hidden/initial等
res.scrollY // 节点 scroll-y 属性的当前值
// 此处返回指定要返回的样式名
res.margin
res.backgroundColor
res.context // 节点对应的 Context 对象
})
//执行上述所有的请求
query.exec();
},