js禁止浏览器的回退事件


Posted in Javascript onApril 20, 2017

直接来个终极方案:

查找了好多资料才找到的,这种方式,可以消除 后退的所有动作。包括 键盘、鼠标手势等产生的后退动作。

<script language="javascript">
 //防止页面后退
 history.pushState(null, null, document.URL);
 window.addEventListener('popstate', function () {
   history.pushState(null, null, document.URL);
 });
</script>

现在,我们项目中就使用了这种方式。在常用浏览器中,都可以禁用了后退。

具体实例:

$(function(){
 if (window.history && window.history.pushState) {
   history.pushState(null, null, document.URL);
   window.addEventListener('popstate', forbidBack);
 }
})
/**
 * 禁止回退按钮
 */
function forbidBack(){
 appUtils.mobileConfirm("确定放弃重置密码?",function(){//yes
  window.removeEventListener('popstate',forbidBack);
  muiwindow.muiwebview({"url":"login.html"});
 },function(){//no
  //防止页面后退
  history.pushState(null, null, document.URL);
 });
}

PS:关于addEventListener与removeEventListener的注意事项可参考:addEventListener()与removeEventListener()解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery插件开发注意事项小结
Jun 04 Javascript
jquery ajax属性async(同步异步)示例
Nov 05 Javascript
js写的评论分页(还不错)
Dec 23 Javascript
jquery bind(click)传参让列表中每行绑定一个事件
Aug 06 Javascript
javascript操作ul中li的方法
May 14 Javascript
js实现点击文本框显示日期选择器特效代码分享
May 21 Javascript
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别?
Nov 18 Javascript
JavaScript判断对象是否为数组
Dec 22 Javascript
纯JavaScript手写图片轮播代码
Oct 20 Javascript
详谈JavaScript的闭包及应用
Jan 17 Javascript
Koa项目搭建过程详细记录
Apr 12 Javascript
JS浅拷贝和深拷贝原理与实现方法分析
Feb 28 Javascript
vue-cli入门之项目结构分析
Apr 20 #Javascript
JS+HTML5实现上传图片预览效果完整实例【测试可用】
Apr 20 #Javascript
详解Vue使用 vue-cli 搭建项目
Apr 20 #Javascript
解决AngualrJS页面刷新导致异常显示问题
Apr 20 #Javascript
Vue.js实现模拟微信朋友圈开发demo
Apr 20 #Javascript
AngularJS 单选框及多选框的双向动态绑定
Apr 20 #Javascript
Vue如何引入远程JS文件
Apr 20 #Javascript
You might like
php中使用DOM类读取XML文件的实现代码
2011/12/14 PHP
PHP简单判断iPhone、iPad、Android及PC设备的方法
2016/10/11 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
PHP网站常见安全漏洞,及相应防范措施总结
2021/03/01 PHP
javascript获取浏览器类型和版本的方法(js获取浏览器版本)
2014/03/13 Javascript
JavaScript link方法入门实例(给字符串加上超链接)
2014/10/17 Javascript
全面解析Bootstrap图片轮播效果
2015/12/03 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
2016/05/27 Javascript
Vue开发中整合axios的文件整理
2017/04/29 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
详解vue挂载到dom上会发生什么
2019/01/20 Javascript
微信小程序如何实现在线客服功能
2019/10/16 Javascript
BootstrapValidator验证用户名已存在(ajax)
2019/11/08 Javascript
vue中js判断长时间不操作界面自动退出登录(推荐)
2020/01/22 Javascript
不刷新网页就能链接新的js文件方法总结
2020/03/01 Javascript
如何解决vue在ios微信&quot;复制链接&quot;功能问题
2020/03/26 Javascript
[03:46]DAC趣味视频-中文考试.mp4
2017/04/02 DOTA
[06:45]DOTA2-DPC中国联赛 正赛 Magma vs LBZS 选手采访
2021/03/11 DOTA
Python正则表达式非贪婪、多行匹配功能示例
2017/08/08 Python
深入理解Django自定义信号(signals)
2018/10/15 Python
更新修改后的Python模块方法
2019/03/03 Python
python使用tomorrow实现多线程的例子
2019/07/20 Python
关于python tushare Tkinter构建的简单股票可视化查询系统(Beta v0.13)
2020/10/19 Python
美国手机支架公司:PopSockets
2019/11/27 全球购物
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
护理专业自荐信
2013/12/03 职场文书
葡萄牙语专业个人求职信
2013/12/10 职场文书
大学自主招生自荐信
2013/12/16 职场文书
秋天的怀念教学反思
2014/04/28 职场文书
会计求职信
2014/05/29 职场文书
诚实守信演讲稿
2014/09/01 职场文书
教师党员批评与自我批评发言稿
2014/10/15 职场文书
个人查摆问题及整改措施
2014/10/16 职场文书
党的群众路线教育实践活动方案
2014/10/31 职场文书
后备干部推荐材料
2014/12/24 职场文书
阿里云Nginx配置https实现域名访问项目(图文教程)
2021/03/31 Servers