Chrome 拡張機能を作る
ブックマーク登録拡張機能の作成
現状 Pasty というブックマック登録の拡張機能を使用している。
これまでは正しく動作していたが、マシンを仮想化してからは何か調子が悪い。
複数リンクがある筈なのにタブ1個しか展開されない等・・・
仕方ないので Pastyを参考に、自作で拡張機能を作ることにする。
これまでは正しく動作していたが、マシンを仮想化してからは何か調子が悪い。
複数リンクがある筈なのにタブ1個しか展開されない等・・・
仕方ないので Pastyを参考に、自作で拡張機能を作ることにする。
クリップボードの取得
前回作成した拡張機能テストプログラムに肉付けしていく。
まずはクリップボードの取得から。
クリップボードからの貼り付けは以下コマンドで実現できる。
HTMLにクリップボードの内容を貼り付けるためのtextareaを作成
JavaScriptでtextarea id="paste" にフォーカスをセットしクリップボードを張り付ける。
拡張機能画面(chrome://extensions)で test拡張機能の再読み込みを行い、
何かクリップボードにコピーした後、test拡張機能を実行…
しかし何もコピーされない
まずはクリップボードの取得から。
クリップボードからの貼り付けは以下コマンドで実現できる。
document.execCommand("paste");
HTMLにクリップボードの内容を貼り付けるためのtextareaを作成
<textarea id="pastearea"></textarea>
JavaScriptでtextarea id="paste" にフォーカスをセットしクリップボードを張り付ける。
let pastearea = document.getElementById("pastearea")
pastearea.focus()
document.execCommand("pastearea")
pastearea.focus()
document.execCommand("pastearea")
拡張機能画面(chrome://extensions)で test拡張機能の再読み込みを行い、
何かクリップボードにコピーした後、test拡張機能を実行…
しかし何もコピーされない
アクセス権限
クリップボードからの読み込みを行うにはアクセス権限が必要っぽい。
権限一覧はこちら
https://support.google.com/chrome/a/answer/7515036?hl=ja
この中の "clipboardRead" 権限を付加すれば良い。
manifest.json に "permissions": ["clipboardRead"] の行を追加する。
拡張機能を再読み込みし実行
貼り付けできた。
権限一覧はこちら
https://support.google.com/chrome/a/answer/7515036?hl=ja
この中の "clipboardRead" 権限を付加すれば良い。
manifest.json に "permissions": ["clipboardRead"] の行を追加する。
{
"manifest_version": 2,
"name": "test",
"version": "1.0.0.0",
"browser_action": {
"default_popup": "popup.html",
"default_title": "test"
},
"permissions": ["clipboardRead"]
}
拡張機能を再読み込みし実行
貼り付けできた。
Chrome拡張機能
0 件のコメント:
コメントを投稿