Dalam sesetengah tapak web, kadangkala kita perlu melakukan beberapa operasi semasa menutup halaman web, seperti mengingatkan pengguna untuk menyimpan data, atau merekodkan operasi tertentu pengguna pada halaman web, dsb. Operasi ini perlu dicetuskan secara automatik apabila pengguna menutup halaman web, dan jquery menyediakan beberapa kaedah untuk menentukan peristiwa menutup tetingkap.
1. acara sebelum nyahmuat
Acara sebelum nyahmuat ialah peristiwa yang dicetuskan apabila tetingkap, dokumen atau bingkai dipunggah atau ditutup. Peristiwa ini akan dicetuskan sebelum penyahpasangan atau penutupan sebenar Kotak gesaan boleh muncul dalam acara ini untuk menggesa pengguna menyimpan data atau operasi lain.
Kodnya adalah seperti berikut:
$(window).on('beforeunload', function() { return 'Are you sure you want to leave?'; });
Dalam kod ini, acara beforeunload terikat pada objek tetingkap. Apabila pengguna menutup atau meninggalkan halaman, kotak gesaan akan muncul bertanyakan pengguna jika mereka pasti mahu keluar. Pengguna boleh memilih untuk kekal atau menutup tingkap.
2. Acara nyah muat
Acara nyah muatan ialah peristiwa yang dicetuskan apabila tetingkap, dokumen atau bingkai dipunggah atau ditutup. Peristiwa ini akan dicetuskan selepas halaman web dipunggah atau ditutup. Tindakan tertentu pengguna pada halaman web, dsb. boleh direkodkan dalam acara ini.
Kodnya adalah seperti berikut:
$(window).on('unload', function() { // 记录用户离开时间 var leaveTime = new Date(); localStorage.setItem('leaveTime', leaveTime.getTime()); });
Dalam kod ini, acara bongkar diikat pada objek tetingkap. Apabila pengguna menutup atau meninggalkan halaman, masa pengguna meninggalkan halaman akan direkodkan dan disimpan dalam localStorage.
3. Anda boleh menggunakan acara beforeunload dan unloaded pada masa yang sama
Kodnya adalah seperti berikut:
$(window).on('beforeunload', function() { // 提醒用户保存数据 return 'Are you sure you want to leave?'; }); $(window).on('unload', function() { // 记录用户离开时间 var leaveTime = new Date(); localStorage.setItem('leaveTime', leaveTime.getTime()); });
Dalam kod ini, acara before unload dan unload terikat pada masa yang sama. Apabila pengguna menutup atau meninggalkan halaman, kotak gesaan akan muncul bertanyakan pengguna jika mereka pasti mahu keluar. Pengguna boleh memilih untuk kekal atau menutup tetingkap, dan kemudian masa apabila pengguna meninggalkan halaman akan direkodkan dan disimpan dalam localStorage.
Ringkasan
Apabila anda perlu melakukan beberapa operasi pada halaman web apabila pengguna menutup atau meninggalkan halaman, anda boleh menggunakan acara sebelum memuat dan memunggah. Antaranya, acara sebelum pemunggahan dicetuskan sebelum halaman web benar-benar ditutup, dan kotak gesaan boleh muncul dalam acara ini; peristiwa pemunggahan dicetuskan selepas halaman web ditutup, dan operasi pengguna boleh direkodkan dalam acara ini. Pada masa yang sama, kedua-dua acara ini boleh digunakan pada masa yang sama untuk melaksanakan berbilang operasi.
Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada untuk menutup tetingkap dalam jquery. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!