<p>Adakah terdapat kod JavaScript/jQuery silang penyemak imbas yang boleh mengesan jika penyemak imbas atau tab penyemak imbas ditutup, tetapi bukan akibat mengklik pautan? </p>
Atas sebab tertentu, pelayar berasaskan Webkit tidak mengikut kotak dialog dalam spesifikasi. Contoh di bawah mempunyai contoh penutupan yang berfungsi hampir merentasi pelayar.
window.addEventListener("beforeunload", function (e) {
var confirmationMessage = "\o/";
(e || window.event).returnValue = confirmationMessage; //Gecko + IE
return confirmationMessage; //Webkit, Safari, Chrome
});
Jika saya faham dengan betul, anda ingin tahu bila tab/tetingkap ditutup dengan berkesan. Setakat yang saya tahu, satu-satunya cara untuk mengesan ini dalam JavaScript adalah dengan menggunakan acara onunload atau onbeforeunload.
Malangnya (atau untungnya?), acara ini juga dimatikan apabila anda meninggalkan tapak web melalui pautan atau menggunakan butang belakang penyemak imbas anda. Jadi ini adalah jawapan terbaik yang boleh saya berikan, saya rasa anda tidak dapat mengesan secara asli close close dalam JavaScript. Tolong betulkan saya jika saya salah faham.
Menurut dokumentasi MDN:
Atas sebab tertentu, pelayar berasaskan Webkit tidak mengikut kotak dialog dalam spesifikasi. Contoh di bawah mempunyai contoh penutupan yang berfungsi hampir merentasi pelayar.
Contoh ini berfungsi pada semua penyemak imbas.
Jika saya faham dengan betul, anda ingin tahu bila tab/tetingkap ditutup dengan berkesan. Setakat yang saya tahu, satu-satunya cara untuk mengesan ini dalam JavaScript adalah dengan menggunakan acara onunload atau onbeforeunload.
Malangnya (atau untungnya?), acara ini juga dimatikan apabila anda meninggalkan tapak web melalui pautan atau menggunakan butang belakang penyemak imbas anda. Jadi ini adalah jawapan terbaik yang boleh saya berikan, saya rasa anda tidak dapat mengesan secara asli close close dalam JavaScript. Tolong betulkan saya jika saya salah faham.