日期:2014-05-16  浏览次数:20341 次

如何做到 js/javascript禁止页面F5刷新,兼容火狐和chrome呢
我在网上找了好久,普遍的意见是



document.onkeydown = function (e) {
            var ev = window.event || e;
            var code = ev.keyCode || ev.which;
            if (code == 116) {
                ev.keyCode ? ev.keyCode = 0 : ev.which = 0;
                cancelBubble = true;
                return false;
            }
        }


我在IE8下测试可以实现,但在火狐18 用Firbug调试,发现上面的代码不兼容火狐。在chrome中测试发现也不兼容

------解决方案--------------------
if ( e && e.preventDefault ) 
e.preventDefault(); 
else
window.event.returnValue = false;

在return false;前面加上这两句试下。
------解决方案--------------------
本觉得不像可以实现的样子,因为这个事件该是浏览器处理的,不是js代码
但刚刚试了一下,firefox,chrome,ie居然都支持,呵呵,真想不到
你的火狐谷歌不行可能是浏览器的安全级别造成的吧,这个毕竟是浏览器实现的功能,让不让你阻止浏览器说了算