Mar*_*ial 2 javascript google-chrome contextmenu google-chrome-extension
在 Google Chrome 扩展程序中,我知道如何在选定文本上显示上下文菜单。
chrome.contextMenus.create({
'title': 'TEST',
'contexts': ['selection'],
'id': "test"
});
chrome.contextMenus.create({
'title': 'submenu',
'contexts': ['selection'],
'id': "test_1",
'parentId': "test",
'onclick': menu.onClicked_
});
Run Code Online (Sandbox Code Playgroud)

但我只想在所选文本位于“可编辑元素”(输入文本、文本区域、内容可编辑 DIV 等)中时才显示此菜单。我怎样才能做到这一点 ?
谢谢!
看起来几乎不可能实现你想要的。
Chrome API为上下文菜单定义了 2 个相关的上下文:
"editable" 所有可编辑元素的上下文"selection" 对于选定的文档片段您想要的是它们之间的逻辑 AND,但 Chrome 只允许逻辑 OR。
还要考虑一个选择可以跨越多个可编辑元素。因此,您需要一个可以描述为“完全在可编辑元素内进行文本选择”的上下文。好吧,您可以随时留下功能请求。
可能有一些棘手的解决方法,例如尝试使用每个页面上的内容脚本检测用户选择,并基于此动态创建菜单,但我确信有太多的极端情况。
| 归档时间: |
|
| 查看次数: |
1368 次 |
| 最近记录: |