Mencegah Navigasi Halaman Web dengan JavaScript
Dalam senario tertentu, mungkin perlu menghalang halaman web daripada menavigasi atau memuat semula. JavaScript menawarkan penyelesaian untuk mencapai perkara ini dengan acara onbeforeunload.
Memahami onbeforeunload
Acara onbeforeunload dicetuskan apabila pengguna cuba menavigasi keluar dari halaman web semasa, sama ada melalui pautan, butang belakang atau entri URL manual. Acara ini menyediakan cara untuk mengganggu proses navigasi dan memaparkan mesej atau melakukan tindakan tertentu.
Penggunaan onbeforeunload
Untuk menghalang halaman web daripada menavigasi pergi menggunakan JavaScript, tetapkan fungsi pengendali kepada acara onbeforeunload seperti berikut:
<code class="js">window.onbeforeunload = function() { return ""; };</code>
Dalam contoh ini, rentetan kosong dikembalikan, yang menghalang navigasi tanpa memaparkan sebarang mesej pengesahan.
Nota untuk Pelayar Terbaharu
Pelayar yang lebih baharu, seperti Chrome dan Firefox, menghalang mesej tersuai daripada dipaparkan dalam gesaan onbeforeunload. Sebaliknya, mereka memaparkan mesej lalai, seperti "Sebarang perubahan yang belum disimpan akan hilang".
Pengendalian Mesej Alternatif
Untuk penyemak imbas lama yang menyokong gesaan tersuai, anda boleh nyatakan mesej yang akan dipaparkan menggunakan sintaks berikut:
<code class="js">window.onbeforeunload = function() { return "Are you sure you want to navigate away?"; };</code>
Ini akan memaparkan mesej yang ditentukan apabila pengguna cuba menavigasi keluar dari halaman.
Pertimbangan Tambahan
Atas ialah kandungan terperinci Bagaimanakah JavaScript Boleh Menghalang Navigasi Halaman Web?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!