繁体   English   中英

用右键单击选择更新上下文菜单

[英]Update Context Menu with right-click selection

我有一些代码可以在做出选择时更新上下文菜单。 我的内容代码是:

document.addEventListener('selectionchange', function() {
    var selection = window.getSelection().toString().trim();
    chrome.runtime.sendMessage({
        request: 'selectionChanged',
        selection: selection
    });
});

后台代码捕获消息并更新上下文菜单。

如果我通过使用鼠标左键(拖动以突出显示,双击等)选择文本,然后调出上下文菜单,则此方法会很好,但是如果我右键单击尚未突出显示的单词,则此方法将无法正常工作。 从我可以看出的问题是,在处理选择更改消息和更新菜单之前,先弹出上下文菜单。

在显示菜单之前,如何用右键单击选择更新上下文菜单?

只需运行一个间隔并使用window.getSelection().toString().trim()来检查选择中的更改。

这是我的意思的一个粗略示例:

var selection="";
setInterval(function(){
    if(selection!=window.getSelection().toString().trim()){
        selection=window.getSelection().toString().trim();
        chrome.runtime.sendMessage({
            request: 'selectionChanged',
            selection: selection
        });
    }
},500);

您可以选择执行此人的建议: Javascript:如何检测单词是否突出显示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM