2

私は既存のページの上にGUIを作成しようとしているところでクロムエクステンションを書いています。このGUIは、入力テキストフィールドと返信ボタンで構成されています。私は、HTML文字列を作成し、それをWebサイトに追加することによってGUIを作成しました。クロムエクステンション - 追加されたコードのイベントリスナー

返信ボタンを押すと、入力テキストフィールドのデータをサーバーに送信できるように、関数が呼び出されるようにイベントリスナーを追加します。私の理解では、コードがページに追加されると、script.jsにアクセスできなくなり、イベントリスナーにアクセスできなくなります。代わりがありますか?私のGUIの

画像:http://www.filedump.net/index.php?pic=eventlistenermoot1328028688.jpg

答えて

5

コンテンツスクリプトからサンドボックス化されるには、コードを注入しているページ。ただし、コンテンツスクリプトには、イベントを含むページDOMへの完全なアクセス権があります。つまり、追加する要素にイベントリスナーを追加できます。

コンテンツスクリプト:あなたは、コンテンツのスクリプトはその後、背景ページにメッセージを送ることができるように目立たないようにそれらを追加する必要が

var html = document.createElement('div'); 
    html.innerHTML = '<input id="clickMe" type="button" value="Click Me" />'; 
document.body.appendChild(html); 

document.getElementById('clickMe').addEventListener('click', function() { 
    // do stuff 
}); 
+0

グレート。ありがとうございました。私は昼食から戻ってきたらそれを試してみる:)私はもう問題があれば、私はあなたの投稿を続けます。 – Jon

+0

素晴らしいそれは美しく働いた。 – Jon

関連する問題