##経緯
Chromeにて拡張機能アイコンをクリックすると、予めマウスのドラッグ操作で選択していたテキスト範囲をコピーするような、シンプルな拡張機能を作成しています。
##質問
その中において、当拡張機能アイコンをクリックすることで選択範囲のテキストをpopup.htmlで表示するところまではできているのですが、クリップボードにコピーできておりません。popup.jsのdocument.execCommand("Copy")とconsole.log()が機能していないような振る舞いです。この2つのコマンドを正常に動作させる、あるいは同等の動作を実現する記述方法を教えていただきたいです。
説明不足な点などございましたら、適宜追記してまいりますので、どうぞよろしくお願い申し上げます。
##ソース
popuphtml
1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <script src="popup.js"></script> 6 <title></title> 7 </head> 8 <body> 9 <div id="output"></div> 10 </body> 11</html>
popupjs
1chrome.tabs.executeScript( 2 { 3 code: "window.getSelection().toString();", 4 }, 5 function (selection) { 6 document.getElementById("output").innerHTML = selection[0]; 7 document.execCommand("Copy"); #クリップボードにコピーされない 8 console.log("Copied!"); #Chrome DevToolsのコンソールに表示されない 9 } 10);
manifestjs
1{ 2 "manifest_version": 2, 3 "name": "Select text", 4 "description": "A sample extension to get the selected text", 5 "version": "1.0", 6 "icons": { 7 8 }, 9 "browser_action": { 10 "default_popup": "popup.html" 11 }, 12 "permissions": [ 13 "activeTab", 14 "clipboardWrite", 15 "clipboardRead" 16 ] 17}