wx.createSelectorQuery()为什么拿不到<page>这个标签
发布于 6 年前 作者 liangxiuying 2989 次浏览 来自 问答

现在有个需求,需要获取页面DOM树结构,调用wx.createSelectQuery()这个方法,但是只能获得<page>标签内部的元素内容;

例如页面结构

<page>
 
    <view class="conts">
 
        ......
 
    </view>
 
</page>

js代码–这样是获取到的

onready: function() {
  var query = wx.createSelectorQuery()
  query.select('.conts').boundingClientRect()
  query.selectViewport().scrollOffset()
  query.exec(function(res) {
    console.log(res);
    res[0].top // #the-id节点的上边界坐标
    res[1].scrollTop // 显示区域的竖直滚动位置
  })
}

而这样是直接获取page是获取不到的

onready: function() {
  var query = wx.createSelectorQuery()
  query.select('page').boundingClientRect()
  query.selectViewport().scrollOffset()
  query.exec(function(res) {
    console.log(res);
    res[0].top // #the-id节点的上边界坐标
    res[1].scrollTop // 显示区域的竖直滚动位置
  })
}

各位有什么方法,能获取到page根目录?

2 回复

您可以在 wxml 最外层套一层 <view class=“container”> … </view>

主要这个页面结构不是我能控制的,我是需要拿到别人的页面结构,如果别人都有最外的一层.container就好了,我就可以控制,关键每个人的写法不一样

回到顶部