選択したテキストをChrome拡張機能に取り込む方法を探しています。
元になりたい。 Facebookフィードのテキストを選択し、アイコンをクリックすると、そのテキストが取得され、選択したテキストが拡張機能に表示されます。
私はこれまでのところこれを得ました:
chrome.tabs.executeScript(null, {
code: "alert(window.getSelection().toString());"
})
選択したテキストを取得し、Chromeでメッセージで警告します。ただし、HTMLポップアップに表示したいです。次のように書きたい:
document.getElementById("output").value = "Selected text here(but how)"
助けが必要!そして、これについて他の質問があることは知っていますが、彼らは私が欲しいものを正確にくれませんでした。
実行されたコードによって評価された最後の式をコールバック関数で使用できます。
chrome.tabs.executeScript( {
code: "window.getSelection().toString();"
}, function(selection) {
document.getElementById("output").value = selection[0];
});
これを行うには、 Extensions Messaging を使用します。基本的に、「バックグラウンドページ」はリクエストをサービスに送信します。たとえば、「ポップアップ」があり、それをクリックすると、サービスである「Google検索」が実行されます。
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
if (request.method == "getSelection")
sendResponse({data: window.getSelection().toString()});
else
sendResponse({}); // snub them.
});
いくつかの参照
または、このプラグインを使用できます