を使用した新しいアプローチがありnavigator.sendBeacon
ます。以下は、ページから移動するためのミックスパネルイベントを設定します。
var props = {};
document.addEventListener('visibilitychange', function() {
if (document.visibilityState === 'hidden') {
mixpanel.track('Page closed', props, {transport: 'sendBeacon'});
}
});
{transport: 'sendBeacon'}
このgithubの問題で説明されているように、 2020年1月の時点でmixpaneljsで利用できるものです。その議論には(実装前に提案された)スニペットがありますが、「アンロード」ではなく「アンロード前」と言うべきだと思います。しかし、私は見つけました...
navigator.sendbeaconのdeveloper.mozilla.orgドキュメントには、この追跡目的で「unload」または「beforeunload」の代わりに「visibilitychange」を使用することをアドバイスする非常に関連性の高いセクションが含まれています。このイベントは、ユーザーが別のタブに切り替えた場合でも発生します(ページを正確に「閉じる」わけではありません。予想どおりではない可能性があります)が、モバイルブラウザーユーザーが別のアプリを開いた場合にも発生します(おそらく予想どおりです。モバイルでページを「閉じる」主な方法)。