有没有办法在firefox扩展中的上下文菜单下获取单词?

yut*_*mmo 5 javascript xul firefox-addon

我正在编写一个Firefox扩展来添加上下文菜单元素,我可以同时获取DOM元素和所选文本,但无法获得触发右键单击事件的未选择单词.我认为它必须是可能的,因为拼写检查器会这样做,或者是一个特殊的内置函数?

有任何想法吗?以下是获取其他两个的代码:

oncommand="if(gContextMenu.isTextSelected) rightClick(document.commandDispatcher.focusedWindow.getSelection().toString()); else rightClick(gContextMenu.target.innerHTML);"
Run Code Online (Sandbox Code Playgroud)

Jon*_*hop 2

我不知道有什么超级简单的方法可以做到这一点。默认情况下,拼写检查器仅在文本区域元素中工作(尽管也可以修改它以在输入字段中工作)。因此,该功能很可能封装在这些控件的内部代码中。

然而,我在 StackOverflow 上的另一个问题的答案中发现了一小段代码,声称可以获取鼠标光标下的单词。它只是利用 onmousemove 事件来跟踪您所在的位置。

从可用性的角度来看,我个人认为最好强制用户选择他们感兴趣的文本,然后对其进行操作。用于处理选定文本的内置功能已经存在(正如您所指出的),然后用户就毫无疑问他们在谈论什么(尽管我想这一切都取决于您的最终目标是什么)。