This commit is contained in:
lisonge 2024-07-13 23:15:20 +08:00
parent f697f109a3
commit 0e00103d54

View File

@ -78,21 +78,21 @@
这样一个选择器只能在右侧使用快速查询, 为了在中间的子选择器也能使用
额外规定如果属性选择器如果符合上面格式并且右侧是 `>>n`, 也能在局部使用快速查找
额外规定如果属性选择器如果符合上面格式并且右侧是 `<<n`, 也能在局部使用快速查找
示例 `A > B + C[id='x'][childCount=2] >>n D` 中的 `C[id='x'][childCount=2] >>n` 可以使用局部快速查找
示例 `A > B + C[id='x'][childCount=2] <<n D` 中的 `C[id='x'][childCount=2] <<n` 可以使用局部快速查找
> [!TIP] 提示
> 实际上从根节点开始匹配的选择器如 `A > B` 都可等价为 `A > @B <<n [parent=null]`
下面给出满足局部查询优化的示例: ✅ 表示符合格式, ❎ 表示不符合格式
- `A > B + C[id='x'][childCount=2] >>n D` ✅
- `A > B + C[childCount=2][id='x'] >>n D` ❎
- `A > B + C[id='x'][childCount=2] <<n D` ✅
- `A > B + C[childCount=2][id='x'] <<n D` ❎
上面介绍的是只有一个局部选择器的情况, 下面给出多个局部快速查找的的示例
`A > C[id='x'] >>n D[id='y'] >>n E`, 其中的 `C[id='x'] >>n``D[id='y'] >>n` 都可以使用局部快速查找
`A > C[id='x'] <<n D[id='y'] <<n E`, 其中的 `C[id='x'] <<n``D[id='y'] <<n` 都可以使用局部快速查找
---