これは私がここに持っているものです:
「manifest.json」
{..."permissions": [
"https:/mywebsite.com/"],"content_scripts": [{
"matches" : ["http://*/*", "https://*/*"],
"js": ["js/jquery-1.7.2.min.js", "contentScript1.js", "contentScript2.js"],
"all_frames" : true,
"run_at": "document_end"
} ]}
「contentScript1.js」
$(document).ready(function() {
$('#someDiv').load('https://mywebsite.com/index.html');}
「contentScript2.js」
function showMessage()
{alert ('Hello World!');}
「index.html」
<a href="" onclick="showMessage();"> <img src="https://mywebsite.com/images/myimage.png"></a>
ここで実際に行っているのは、アクセスしているページのコードにクリック可能な画像を挿入することです。画像をクリックすると、「HelloWorld」メッセージが表示されることを期待しています。コンテンツスクリプトと画像が正常に読み込まれているにもかかわらず、画像をクリックしても関数が呼び出されず、コンソールに次のエラーが表示されます。
Uncaught ReferenceError:showMessageが定義されていません
コンテンツスクリプトではなく、コードを挿入したWebサイトで関数を探しているため、関数が見つからないと思います。しかし、それはなぜですか。つまり、画像をクリックするのではなく、ロード時にコンテンツスクリプト内で関数を呼び出すと、メッセージが表示されます。誰かが私をここから連れ出すことができますか?