需要从当前选项卡中

需要从当前选项卡中

这是我目前拥有的代码:

var clicked = function(){
    var selection
    chrome.tts.speak(selection, {'lang': 'en-US', 'rate': 0.8, 'enqueue': true});
}
chrome.contextMenus.create({
  "title" : "Say '%s'!",
  "type" : "normal",
  "contexts" : ["selection"],
  "onclick" : clicked()
});


我需要从当前选项卡中进行选择。我不知道该怎么办。
有人可以帮忙吗?

最佳答案

两个问题:


不要调用clicked(),而是通过省略括号来传递函数引用。
var selection可从function's parameters获得。在文档中,此对象描述为OnClickData。所需的信息存储在selectionText键中。


应用以下修复程序后的代码:

// Background page
var clicked = function(info, tab) {
    var selection = info.selectionText;
    chrome.tts.speak(selection, {'lang': 'en-US', 'rate': 0.8, 'enqueue': true});
};
chrome.contextMenus.create({
  "title" : "Say '%s'!",
  "type" : "normal",
  "contexts" : ["selection"],
  "onclick" : clicked
});

关于javascript - 需要从当前选项卡中以字符串形式获取选定的文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15914519/

10-10 00:04