# createSelectorQuery

返回一个 SelectorQuery 对象实例。可以在这个实例上使用 select 等方法选择节点,并使用 boundingClientRect 等方法选择需要查询的信息。

Tips:

  • 使用 bz.createSelectorQuery() 需要在生命周期 mounted 后进行调用。
  • 默认需要使用到 selectorQuery.in 方法。

# 支持说明

应用能力 Android iOS PC 预览效果
小程序 3.0.0 3.0.0 3.2.0 待补充
网页应用 X X X 待补充

# 输入

# 输出

返回值:SelectorQuery,该对象的方法列表参见下表:

方法 介绍
SelectorQuery.in 将选择器的选取范围更改为自定义组件 component 内,返回一个 SelectorQuery 对象实例。(初始时,选择器仅选取页面范围的节点,不会选取任何自定义组件中的节点)。
SelectorQuery.select 在当前页面下选择第一个匹配选择器 selector 的节点,返回一个 NodesRef 对象实例,可以用于获取节点信息。
SelectorQuery.selectAll 在当前页面下选择匹配选择器 selector 的所有节点,返回一个 NodesRef 对象实例,可以用于获取节点信息。
SelectorQuery.selectViewport 选择显示区域,可用于获取显示区域的尺寸、滚动位置等信息,返回一个 NodesRef 对象实例。
SelectorQuery.exec 执行所有的请求。请求结果按请求次序构成数组,在callback的第一个参数中返回。

# 代码示例


const query = bz.createSelectorQuery().in(this);
query.select('#id').boundingClientRect(data => {
  console.log("得到布局位置信息" + JSON.stringify(data));
  console.log("节点离页面顶部的距离为" + data.top);
}).exec();

1
2
3
4
5
6
7
最后更新于 : 2/8/2023, 8:33:15 PM