javascript - 如何知道在 Firefox 中是否单击了刷新按钮或浏览器后退按钮

标签 javascript browser cross-browser dom-events

<分区>

如何知道在 Firefox 中刷新按钮是否被点击或浏览器后退按钮被点击...对于这两个事件 onbeforeunload() 方法是一个回调。对于 IE,我是这样处理的:

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();"> 

但是在Firefox中event.clientXevent.clientY总是0。有没有其他方法可以找到它?

最佳答案

用于刷新事件

window.onbeforeunload = function(e) {
  return 'Dialog text here.';
};

https://developer.mozilla.org/en-US/docs/Web/API/window.onbeforeunload?redirectlocale=en-US&redirectslug=DOM%2Fwindow.onbeforeunload

$(window).unload(function() {
      alert('Handler for .unload() called.');
});

关于javascript - 如何知道在 Firefox 中是否单击了刷新按钮或浏览器后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18457797/

相关文章:

javascript - body 动画不流畅

javascript - 如何使用元素上的指针事件禁用整个页面的滚动?

asp.net - Gridview CSS 边框不一致

JavaScript 跨浏览器日期比较?

css - 固定位置在不同的浏览器中不行,如何在Ext.Panel中制作一个带有列的表格?

javascript - 来自 NSIWebBrowserPersist 的 saveDocument() 函数

javascript - javascript中两个不同长度数组的数学运算

javascript - 如何使用 "more"或 "details"消耗部分创建警报对话框?

css - 字体无法在 Safari 或移动浏览器中呈现

javascript - Sketch.js 将 Canvas 复制到剪贴板