ユーザーがブラウザーまたはページを離れる (閉じる) ときに関数を実行しようとしていますが、Chrome を除くすべてのブラウザーで機能しています。
ページから移動するとChromeは機能を正常に実行しますが、タブを閉じるかブラウザを完全に閉じると機能を実行しません。
最後に実行している関数は、画像を作成し、いくつかのデータをサーバーに送信します (分析レポートと同様)。例: img.src="url?data=yyy". この画像はjsで動的に作成されます。
誰かが問題の原因を明らかにすることはできますか? いくつかの理由に絞り込みました。
1)タブが閉じたときに正しいイベントを使用していません(つまり、アンロード前ではありません)
2) Chrome は実際に関数を実行しますが、ブラウザ/ページが閉じるため、画像は送信されません。
どんな助けでも大歓迎です。ありがとう。
サンプルコードは次のとおりです。
if(window.addEventListener){
window.addEventListener("beforeunload", page_unload, false);
}
function page_unload(){
var img = new Image();
var img_src = "http://www.myurl.com?data=yyy"
img.src = img_src;
}