我正在为 Firefox 和 Chrome编写一个扩展,它专门针对文本框(单行和多行)上的上下文菜单......并操纵元素中的值。
要做到这一点,我创造新的上下文菜单项与contexts
设置为editable
,它的一般工作,我想。
由于权限,我无法尝试的时候操纵任何Firefox或Chrome的新标签页上的搜索文本框的内容(我没有这个问题),并获得在Firefox以下错误executeScript
的标签...
错误:缺少选项卡的主机权限
但是,如果用户右键单击新标签页上的文本框,我无法弄清楚如何阻止上下文菜单项出现。没有允许我定位该选项卡的contextType。
有什么办法可以阻止新标签页上的上下文菜单吗?
感谢@wOxxOm的评论,这为我指明了正确的方向......
documentUrlPatterns
注册菜单时使用
因此,我使用了documentUrlPatterns
该menus.create
方法的属性,并且它在我需要的时候工作......
let validUrlPatterns = ["*://*/*", "file:///*/*"];
menus.create({
...
documentUrlPatterns: validUrlPatterns,
contexts: ["editable"]
});
在这种情况下,我有两个项目 - 第一个将匹配普通网站(http://、https://),第二个将匹配本地文件进行测试(file:///)
有关匹配模式的更多信息,请参阅Mozilla 文档
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句