Cách biết trong firefox cho dù nút làm mới được nhấp hay nút quay lại trình duyệt được nhấp ... cho cả hai sự kiện phương thức onbeforeunload() là gọi lại. Đối với IE tôi đang xử lý như thế này:Cách biết nút làm mới hoặc nút quay lại trình duyệt được nhấp trong firefox
function CallbackFunction(event) {
if (window.event) {
if (window.event.clientX < 40 && window.event.clientY < 0) {
alert("back button is clicked");
}else{
alert("refresh button is clicked");
}
}else{
// want some condition here so that I can differentiate between
// whether refresh button is clicked or back button is clicked.
}
}
<body onbeforeunload="CallbackFunction();">
Nhưng trong Firefox event.clientX và event.clientY luôn 0. Có cách nào khác để tìm nó?
Bạn có thể sử dụng API lịch sử và xử lý toàn bộ quá trình chuyển hướng khá nhiều chính mình. Xem https://developer.mozilla.org/en-US/docs/Web/Guide/DOM/Manipulating_the_browser_history –
Lưu ý rằng làm mới cũng có thể được thực hiện bằng cách sử dụng F5, CTRL + R và điều hướng cũng có thể được thực hiện tốt bằng cách sử dụng bàn phím, và nó khác nhau trong các trình duyệt và hệ điều hành khác nhau. – Uooo
BTW, bạn có muốn thực hiện trình duyệt chéo này hoặc chỉ trong firefox không? Tiêu đề của bạn nói firefox, nhưng các thẻ nói qua trình duyệt. – Uooo