Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengesan Peristiwa Tutup Penyemak Imbas dengan Amanah dalam JavaScript?

Bagaimanakah Saya Boleh Mengesan Peristiwa Tutup Penyemak Imbas dengan Amanah dalam JavaScript?

Mary-Kate Olsen
Lepaskan: 2024-12-03 04:05:09
asal
847 orang telah melayarinya

How Can I Reliably Detect Browser Close Events in JavaScript?

Cara Mengendalikan Peristiwa Tutup Penyemak Imbas dengan Berkesan

Mengesan peristiwa tutup penyemak imbas boleh menjadi mencabar, terutamanya dengan kaedah seperti onbeforeunload jQuery dan onunload tidak selalunya boleh dipercayai. Artikel ini menyediakan penyelesaian untuk mengesan peristiwa penutupan tetingkap, memunggah atau sebelum memuat dengan berkesan.

Penyelesaian:

Kod JavaScript berikut boleh digunakan untuk mengesan peristiwa penutupan penyemak imbas:

window.onbeforeunload = function (event) {
    var message = 'Important: Please click on \'Save\' button to leave this page.';
    if (typeof event == 'undefined') {
        event = window.event;
    }
    if (event) {
        event.returnValue = message;
    }
    return message;
};

$(function () {
    $("a").not('#lnkLogOut').click(function () {
        window.onbeforeunload = null;
    });
    $(".btn").click(function () {
        window.onbeforeunload = null;
});
});
Salin selepas log masuk

Pelaksanaan Pilihan:

Fungsi kedua dalam kod adalah pilihan. Ia menghalang gesaan daripada dipaparkan apabila mengklik pada elemen tertentu, seperti #lnkLogOut dan .btn.

Nota:

Adalah penting untuk mengetahui bahawa gesaan tersuai mungkin tidak bekerja dalam Firefox. Rujuk [urutan ini](pautan-ke-benang) untuk mendapatkan maklumat lanjut.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan Peristiwa Tutup Penyemak Imbas dengan Amanah dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan