-
本文禁止页面刷新的思路是禁止掉所有导致页面刷新的按钮或事件,首先我们创建一个demo.html文件,然后我们在浏览器先打开另一个页面比如百度,再输入本地链接访问这个demo.html文件,使其带有可以后退的按钮。代码和效果如图
-
首先我们禁止页面后退事件,让所有的后退事件失效,代码如下,你会发现点击浏览器返回按钮也好,点击alt加<-方向键也好,都失去了后退的效果
-
下面我们尝试通过onbeforeunload事件的监听阻止页面刷新,实现的了效果,但是仍有以下缺点:
1会弹出弹窗,
2.点击重新加载仍然会刷新页面
3.不兼容opera浏览器等
优点:
在主流的几大浏览器中可以稍微阻止以下页面刷新,关闭。
-
继续优化一下,屏蔽掉所有可能导致刷新后退关闭的快捷键事件,代码如下,效果如图
-
最后再屏蔽一下右键菜单,代码及效果如图所示