小编Pra*_*ras的帖子

获取页面上的选定文本和选定节点?

当选择一个文本块(可能跨越许多DOM节点)时,是否可以使用Javascript提取所选文本和节点?

想象一下这个HTML代码:

<h1>Hello World</h1><p>Hi <b>there!</b></p>
Run Code Online (Sandbox Code Playgroud)

如果用户发起了一个从"World ..."开始的mouseDown事件,然后是一个mouseUp甚至就在"那里!"之后,我希望它会返回:

Text : { selectedText: "WorldHi there!" },
Nodes: [ 
  { node: "h1", offset: 6, length: 5 }, 
  { node: "p", offset: 0, length: 16 }, 
  { node: "p > b", offset: 0, length: 6 } 
]
Run Code Online (Sandbox Code Playgroud)

我已经尝试将HTML放入textarea但这只会让我获得selectedText.我没有尝试过该<canvas>元素,但这可能是另一种选择.

如果不是JavaScript,有没有办法使用Firefox扩展?

javascript xhtml firefox firefox-addon selection

9
推荐指数
2
解决办法
2万
查看次数

标签 统计

firefox ×1

firefox-addon ×1

javascript ×1

selection ×1

xhtml ×1