我正在尝试构建chrome扩展。在其中我希望上下文菜单根据页面上的选定文本进行更改。
例如,如果它是一个数字,我想要一个菜单,说明这个数字的可分性测试是...... 如果它是一个字符串,它应该有其他东西,但不能同时有两个。
我无法弄清楚如何做到这一点。
答案 0 :(得分:0)
您必须设置鼠标按下的侦听器。在创建菜单之前,没有其他方法可以获取所选文本。
见这个问题:
chrome extension context menus, how to display a menu item only when there is no selection?
以下是其余部分代码的部分代码。
document.addEventListener("mousedown", function(event){
//right click
if(event.button == 2) {
if(window.getSelection().toString()) {
chrome.extension.sendRequest({cmd: "createSelectionMenu"});
} else {
chrome.extension.sendRequest({cmd: "createRegularMenu"});
}
}
}, true);