这是我目前拥有的代码:
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/