Firefoxの場合、ブラウザアイコンボタンをクリックした後に新しいタブで読み込まれるページがあります。ページのバックグラウンドスクリプトは最初にうまく動作しますが、ページを再読み込みしたり、既に開いているタブでもう一度ボタンをクリックしたり、タブを閉じて別のタブを開いたりしてからは起動しません。私はスクリプトを再保存して、拡張機能を強制的にアンロード/再ロードして正しく実行する必要があります。
私に含める必要があるマニフェストには何かがありますか?
拡張背景スクリプトは再保存されないとロードされません
manifest.jsonを
アップデート:私は以下のコードに私の問題を分離しました。ページを更新するか、ブラウザのアクションボタンを再度クリックすると、実行はになり、xhr.onreadystate = function()にスキップされ、決してメイン()にはなりません。要求/受信されたものについては、xhr.onreadystateは変更されていません。
更新2:実行により、Main()へのパススルーが3つになります。すべての変数は最初の実行からそれらの値を保持しています。ページをリロードした後、またはブラウザのアイコンをクリックした後で、どうやってクリアするのですか?
function GetData(request)
{
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function()
{
console.log(xhr.readyState + " : " + xhr.status)
if (xhr.readyState == 4 && xhr.status == 200)
{
re_data = JSON.parse(xhr.responseText);
Main();
}
}
xhr.open("GET", request, true);
xhr.send();
}
いいえ、* manifest.json *に記載されている内容は、あなたが何を記述するものであってはなりません。 * background.js *と* modify_page.js *ファイル、または少なくとも問題を複製するのに十分なファイルを含めて、何が起きているのかを知るには、* complete * [mcve]が必要です。 – Makyen