テキストをシステム クリップボードにコピーするコンテキスト メニュー オプションを作成しようとしています。
現在、ハードコードされた文字列リテラルをコピーしているだけですが、選択したテキストをコピーするように変更する方法を知りたいです。具体的には、オブジェクトを適切に作成する方法がわかりませんcreateProperties
(下部を参照)
これはバックグラウンド ページでのみ実行できると理解しています。
次の背景ページがあります。
background.html
<textarea id="temp"></textarea>
<script src="context.js"></script>
context.js
以下のとおりであります:
chrome.contextMenus.create({
"title": "Freedom",
"contexts": ["editable"],
"onclick" : copyToClipboard
});
function copyToClipboard()
{
var tempNode = document.getElementById("temp");
tempNode.value = "some text";
tempNode.select();
var status = document.execCommand('copy',false,null);
if(status) alert('successful');
else alert('unsuccessful');
}
私のmanifest.json
は次のとおりです。
{
"manifest_version": 2,
"name": "Freedom",
"description": "Provides users useful and fun context menu options that they can access from anywhere.",
"version": "1.0",
"permissions": [
"contextMenus",
"clipboardWrite"
],
"background": {
"page": "background.html"
}
}
chrome.contextMenus.create() 関数を間違って宣言しているようです。createProperties
ドキュメントを読んだことがありますが、オブジェクトを適切に作成していないとしか思えません。
私はこれらのソースを模倣しようとしています:
Chrome拡張機能のコンテキストメニュー項目でコンテンツスクリプトメソッドを呼び出すことは可能ですか?
http://paul.kinlan.me/chrome-extension-adding-context-menus/
その他の関連する質問は次のとおりです。