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 相关文章推荐
javascript 当前日期加(天、周、月、年)
Aug 09 Javascript
学习ExtJS(二) Button常用方法
Oct 07 Javascript
javasctipt如何显示几分钟前、几天前等
Apr 30 Javascript
理解javascript回调函数
Dec 28 Javascript
Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法
Jun 23 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
Jul 06 Javascript
微信小程序组件之srcoll-view的详解
Oct 19 Javascript
js原生实现移动端手指滑动轮播图效果的示例
Jan 02 Javascript
vue和webpack项目构建过程常用的npm命令详解
Jun 15 Javascript
vue下的@change事件的实现
Oct 25 Javascript
vue跳转方式(打开新页面)及传参操作示例
Jan 26 Javascript
JavaScript Image对象实现原理实例解析
Aug 26 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中file_exists与is_file,is_dir的区别介绍
2012/09/12 PHP
php mssql扩展SQL查询中文字段名解决方法
2012/10/15 PHP
JS异常处理try..catch语句的作用和实例
2014/05/05 PHP
php生成随机颜色方法汇总
2014/12/03 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
php7新特性的理解和比较总结
2019/04/14 PHP
Shell脚本实现Linux系统和进程资源监控
2015/03/05 Javascript
javascript中eval函数用法分析
2015/04/25 Javascript
jQuery实现滚动鼠标放大缩小图片的方法(附demo源码下载)
2016/03/05 Javascript
解决vue-cli + webpack 新建项目出错的问题
2018/03/20 Javascript
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
2019/04/12 Javascript
Cordova(ionic)项目实现双击返回键退出应用
2019/09/17 Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
解决vue初始化项目一直停在downloading template的问题
2020/11/09 Javascript
基于javascript实现放大镜特效
2020/12/03 Javascript
Pyramid添加Middleware的方法实例
2013/11/27 Python
Python正则替换字符串函数re.sub用法示例
2017/01/19 Python
Python中用psycopg2模块操作PostgreSQL方法
2017/11/28 Python
python中的字典操作及字典函数
2018/01/03 Python
Python编程求解二叉树中和为某一值的路径代码示例
2018/01/04 Python
对python读取CT医学图像的实例详解
2019/01/24 Python
python使用socket实现的传输demo示例【基于TCP协议】
2019/09/24 Python
python爬虫用mongodb的理由
2020/07/28 Python
Python爬取数据并实现可视化代码解析
2020/08/12 Python
Python列表嵌套常见坑点及解决方案
2020/09/30 Python
澳大利亚小众服装品牌:Maurie & Eve
2018/03/27 全球购物
MySQL面试题
2014/01/12 面试题
小小的船教学反思
2014/02/21 职场文书
活动策划求职信模板
2014/04/21 职场文书
青春励志演讲稿
2014/04/29 职场文书
个人安全生产责任书
2014/07/28 职场文书
2014机关党员干部“正风肃纪”思想汇报
2014/09/15 职场文书
事业单位年度考核评语
2014/12/31 职场文书
建党伟业的观后感
2015/06/01 职场文书
七年级作文之冬景
2019/11/07 职场文书
HDFS免重启挂载新磁盘
2022/04/06 Servers