之前写过相对父元素及下一个兄弟元素的方法。
这次补充一下xpath相对节点位置查找元素的所有方法。例子就不举了,自己可以去练练。
xpath相对节点查找方法:
1、xpath('/ancestor::')
查找当前节点的所有先辈节点,即父节点或祖父节点
2、xpath('/ancestor-or-self::')
查找当前节点的所有先辈节点以及本身
3、xpath('/attribute::')
获取当前节点的所有属性
4、xpath('/child::')
查找当前节点的所有子节点
5、xpath('/descendant::')
获取当前节点的所有后代节点,即子节点、孙节点
6、xpath('/following::')
获取当前节点结束标签后的所有节点
7、xpath('/following-sibing::')
获取当前节点的下一个兄弟节点
8、xpath('/parent::')
获取当前节点的父节点
9、xpath('/preceding::')
获取当前节点开始标签前的所有节点
10、xpath('/preceding-sibing::')
获取当前节点的上一个兄弟节点
11、xpath('/self::')
选取当前节点
大概也就这么多,这些方法非常实用,特别是有些元素通过自己的属性无法查找到的时候就需要通过相对节点的位置来查找。
xpath_input_exp_mark = '//label[contains(text(), "文本内容")]//following-sibling::div[1]//input'
browserfind_element_by_xpath(xpath_input_exp_mark)
表示当前节点的父节点
following-sibling::div[1] 表示当前节点的 兄弟节点 中的 第 1 个 div 标签
大概是这样的吧 可以试试
jquery有个 parents()
比如选了一个div id为test,想整xpath的话 $("#test")parents();这样获取的是一个数组,
var aa = [];
$('#test')parents()each(function(){
aapush(thistagName);
});
获取标签名后 就可以替换成xpath了 不过需要注意的是 这个不止获取到body 最后一个元素应该是到html,也不太确定,反正在firefox上是这样的
以上就是关于通过xpath相对节点位置查找元素全部的内容,包括:通过xpath相对节点位置查找元素、xpath 获取当前节点的父节点,兄弟节点的方法、请教如何用jquery获得在网页上点选的标签的XPATH路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)