Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Menjejaki Perlepasan Pengguna dari Halaman Web, Walaupun dengan Penutupan Penyemak Imbas?

Bagaimanakah Saya Boleh Menjejaki Perlepasan Pengguna dari Halaman Web, Walaupun dengan Penutupan Penyemak Imbas?

DDD
DDDasal
2024-11-24 11:13:11180semak imbas

How Can I Reliably Track User Departure from a Web Page, Even with Browser Closure?

JavaScript, Penyemak Imbas dan Penutupan Tetingkap: Menjejaki Perlepasan Pengguna

Menjejak perlepasan pengguna adalah penting untuk menangkap data dan melakukan tindakan sebelum pengguna meninggalkan halaman. Walaupun memantau acara navigasi agak mudah, mengesan penutupan tetingkap atau perubahan URL tanpa interaksi pengguna menimbulkan cabaran.

Tangkap Acara Penutupan Tetingkap

API Beacon, tersedia dalam moden pelayar, menyediakan penyelesaian. Permintaan Beacon direka bentuk untuk melaksanakan walaupun apabila pengguna meninggalkan halaman secara tiba-tiba, memastikan tindakan kritikal masih boleh dijalankan.

Untuk menggunakan API Beacon, gunakan coretan kod berikut:

var url = "https://example.com/foo";
var data = "bar";

navigator.sendBeacon(url, data);

Alternatif untuk Penyemak Imbas Lama

Jika menyokong yang lebih lama pelayar adalah perlu, acara visibilitychange menawarkan sandaran. Peralihan daripada "pasif" kepada "tersembunyi" dalam acara ini menandakan perlepasan pengguna yang akan berlaku. Berikut ialah contoh:

document.addEventListener('visibilitychange', function() {
  if (document.visibilityState === "hidden") {
    // Perform desired actions (e.g., send beacon request)
  }
});

Kebolehpercayaan dan Penyekat Iklan

Perubahan keterlihatan telah menjadi penunjuk yang boleh dipercayai tentang keluar pengguna dalam penyemak imbas moden. Walau bagaimanapun, penyekat iklan mungkin mengganggu permintaan suar, terutamanya jika asal silang atau berasal daripada domain penjejakan yang diketahui.

Pertimbangan Merentas Tapak

Permintaan Suar ialah permintaan POST yang menghormati sekatan CORS. Apabila membuat permintaan merentas tapak, pastikan ia memenuhi keperluan yang diperlukan untuk mengelakkan penyekatan oleh penyemak imbas.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjejaki Perlepasan Pengguna dari Halaman Web, Walaupun dengan Penutupan Penyemak Imbas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn