我是试图开发 chrome 扩展的设计师。请不要因为这个问题得到了回答而感到内疚。不是。这是我想要的:
- 用户在网络上的任何页面上选择文本
- 点击扩展图标
- 新标签打开,网址为:“ http://music.yandex.ru/search?text= ” + text_selected_at_step_1
这段代码显然有效
var seltext = "apparat";
chrome.tabs.create({ url: "http://music.yandex.ru/search?text=" + seltext });
我的问题是我不能将选定的文本放入变量中。这不起作用:
function getSelectionText() {
var text = "";
if (window.getSelection) {
text = window.getSelection().toString();
} else if (document.selection && document.selection.type != "Control") {
text = document.selection.createRange().text;
}
return text;
}
var seltext = getSelectionText();
chrome.tabs.create({ url: "http://music.yandex.ru/search?text=" + seltext });
这也没有,或者我不明白如何用我的链接总结结果
chrome.tabs.executeScript( {
code: "window.getSelection().toString();"
}, function(selection) {
document.getElementById("output").innerHTML = selection[0];
});
也不是
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
if (request.method == "getSelection")
sendResponse({data: window.getSelection().toString()});
else
sendResponse({}); // snub them.
});
我只想为选定的文本分配一个变量。这看起来很明显的任务,但事实并非如此。我认识的所有前端开发人员都没有解决方案。