在浏览器中检索所选文本的xpath

时间:2009-09-14 08:27:35

标签: javascript jquery xpath

我想在浏览器中检索当前所选文本的xpath。使用JavaScript我能够获取所选文本,但无法获取xpath。

我可以使用Firebug手动找到xpath,但我想以编程方式进行。有可能吗?

[编辑]好的,找到了指向此thread中解决方案的指针。修改了该线程中的代码以满足我的需求。

2 个答案:

答案 0 :(得分:1)

如果选择跨越多个DOM元素,那么路径是什么呢?

我认为你不能从getSelection()(或document.selected)中获取所选的DOM元素。

您可以尝试为mousedown和mouseup设置文档范围的事件处理程序。在mousedown上,您将元素存储在指针下并在mouseup上检查是否有选择。

下一步是生成该元素的路径。这也很tricky

答案 1 :(得分:0)

脱离我的头脑 - 但是通过使用XSL循环遍历每个祖先,你可以建立XPath。

for each ancestor::* { newXPath = concat (local-name(.), [current_node_postion], previousGeneratedXPath)}

通过每个祖先进行递归并构建完整的XPath。