Chrome 拡張機能の構築で遊んでいます。現時点では、コンテキスト メニュー項目をまとめました。コンテキスト メニュー項目をクリックするとitemClicked()
、バックグラウンド スクリプトで起動しますcontext_menu.js
。
function itemClicked(info, tab) {
alert("clicked");
}
アラートが発生します。ajaxリクエストを送信するようなこともできますitemClicked()
ただし、ページに要素を追加することはできません (またはあらゆる種類の DOM 操作)。これと同じくらい基本的なものでさえ機能しません:
var d = document.createElement('div');
d.setAttribute("css", "width: 100px; height: 100px; background-color: red; position: fixed; top: 70px; left: 30px; z-index: 99999999999;");
document.body.appendChild(d);
そこで、同じコードをコンテンツ スクリプトに追加しようとしました。
chrome.contextMenus.onClicked.addListener(function(OnClickData info, tabs.Tab tab) {
//code to append the input here
});
しかし、それでもうまくいきません。私は何を間違っていますか?
クリックした後、コンテキスト メニューでページに何かを追加するにはどうすればよいですか?
本当にありがとう!
編集:これが私のmanifest.jsonです(名前/説明などの無関係なものを削除しました...など)
{
"permissions": [
"activeTab",
"tabs",
"cookies",
"contextMenus"
],
"background": {
"scripts": ["context_menu.js"]
},
"browser_action": {
"default_icon": "icon16.png",
"default_css": "popup.css",
"default_popup": "popup.html"
},
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["vendor/jquery-1.8.2.min.js", "config.js", "content_script.js"]
}
],
"web_accessible_resources": ["popup.html"]
}