时间:2021-05-26
直接来个终极方案:
查找了好多资料才找到的,这种方式,可以消除 后退的所有动作。包括 键盘、鼠标手势等产生的后退动作。
<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()解析
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
当键盘敲下后退键(Backspace)后1、禁止浏览器自动后退2、但不影响密码、单行文本、多行文本输入框等的回退操作//处理键盘事件禁止后退键(Backspac
微信浏览器禁止页面下拉查看网址实例详解此类事件是手机touchmove默认事件行为,可以通过js代码隐藏事件:$(‘body').on(‘touchmove',
1.Angular.js扩展浏览器的事件循环浏览器持续等待例如用户交互这样的事件。当你在一个标签里输入字符之后,这个事件的回调函数在JS解释器中执行了其包含的D
本文是小编日常收集整理些js经典实例,特此分享到平台供大家参考!跨浏览器添加事件//跨浏览器添加事件functionaddEvent(obj,type,fn){
js实现一些跨浏览器的事件方法 用JavaScript实现事件的绑定,移除,以及一些常用的事件属性的获取,时常要考虑到在不同浏览器下的兼容性,下面给出了一个跨