jquery禁用浏览器后退按钮

使用Jquery 禁用浏览器的back 和 next 按钮:

有时为了防止用户乱了访问顺序,不得不禁掉浏览器的前进后退按钮

jQuery(document).ready(function () {
    if (window.history && window.history.pushState) {
        $(window).on('popstate', function () {
           // 当点击浏览器的 后退和前进按钮 时才会被触发, 
            window.history.pushState('forward', null, ''); 
            window.history.forward(1);
        });
    }
    //在IE中必须得有这两行
    window.history.pushState('forward', null, '');  
    window.history.forward(1);
});

(推荐学习:jQuery 教程手册

这段代码主要使用js的 window.history 对象;

举个例子:

假如当前页面的url是:http://localhost:28713/SBNext/index.aspx

执行:window.history.pushState('forward', null, 'badu.aspx');

结果: 在浏览器历史记录中添加一条记录http://localhost:28713/SBNext/index.aspx。当前页面的url变成http://localhost:28713/SBNext/badu.aspx ,但是不会刷新页面,也不会检查url是否正确。 这时如果点击 浏览器的back按钮会回退到http://localhost:28713/SBNext/index.aspx页面, 还是当前页面。 所以这就是上面禁用back按钮 的原理。

Image placeholder
前端答疑
未设置
  14人点赞

没有讨论,发表一下自己的看法吧

推荐文章
jquery不兼容低版本ie浏览器怎么办?

jquery不兼容低版本ie浏览器怎么办?1、可以使用原生JS或者低版本的Jquery1.x版本。因为Jquery从2.x版本开始已经不再进行IE低版本(IE6、IE7、IE8)的兼容性处理。如果需要

jquery如何判断是否是ie浏览器?

jquery如何判断是否是ie浏览器?在写页面的时候,会遇到浏览器兼容问题,在这个浏览器中可以使用,但在其他浏览器中却不能很好的显示。以下就是判断浏览器的方法,从而更好的区分代码,使得页面正常浏览。f

jquery判断浏览器的内核

jquery判断浏览器的内核判断浏览器内核可以使用$.browser属性。$.browser属性在jQuery1.9已经被移除。用于返回用户当前使用的浏览器的相关信息。不建议使用该属性来检测浏览器,因

jquery和jquery ui的区别?

jquery和jqueryui的区别?区别有:1、jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等。 2、jQueryUI则是在jQuery的基础上,利用jQuery的扩展性,

jquery怎么禁用a标签?

jquery怎么禁用a标签?1、使用attr()方法删除a标签的链接,并重新设置click事件。$("a").each(function(){ $(this).css("cursor","defaul

jQuery判断input是否被禁用

jQuery判断input是否被禁用判断input是否被禁用,可用的方法有:●is(":disabled")●prop("disabled")●attr("disabled") first secon

jQuery插件实现瀑布留布局masonry + infinitescroll 图片高度处理

课程推荐:Java开发工程师--学习猿地精品课程 jQuery插件实现瀑布留布局masonry+infinitescroll。使用官方的示例代码实际测试发现,当上传到服务器的时候,由于图片下载速度问题

在浏览器中使用Vue.js裁剪图像

在本教程中,我们将探讨如何在浏览器中使用JavaScript库来操作图片,为服务器上的存储做准备,并在Web程序中使用。我们将使用Vue.js而不是原生JavaScript来完成此操作。要了本文想要完

使用 jQuery 触发 Vue 事件

时间一长老是忘记这行代码的写法,今天特地记上一笔,方便今后查阅 js文件如下document.save.dispatchEvent(newEvent('无此事件'))//触发不存在的事件不会报错 do

jquery和vue的区别是什么?

jquery和vue的区别是什么?●jquery是直接操作DOM;使用选择器($)选取DOM对象,对其进行赋值、取值、事件绑定等操作;和原生的js区别只在于可以更方便的选取和操作DOM对象;数据和界面

vuejs和jquery的区别是什么?

vuejs和jquery的区别1、jQuery首先要获取到dom对象,然后对dom对象进行进行值的修改等操作2、Vue是首先把值和js对象进行绑定,然后修改js对象的值,Vue框架就会自动把dom的值

vue和jquery之间有什么区别?

首先我们来了解一下jquery和vue是什么?Vue是什么?Vue.js是一个前端JavaScript框架,用于构建用户界面。它是开源的。当使用其他JavaScript库时,它还可以用作集成工具。它本

vue与jquery的区别是什么?

vue与jquery的区别是什么?vue和jquey的对比:jQuery是使用选择器($)选取DOM对象,对其进行赋值、取值、事件绑定等操作,其实和原生的HTML的区别只在于可以更方便的选取和操作DO

vue能用jQuery吗?

课程推荐:前端开发工程师--学习猿地精品课程 Vue项目里使用jQuery是完全可行的,而且完全符合Vue的工作思想,本质上,将jQ视为一个对Vue适配度不高的Vue插件就行了,双向绑定工作需要你自己

vue能用jQuery吗?

课程推荐:Java开发工程师--学习猿地精品课程 Vue项目里使用jQuery是完全可行的,而且完全符合Vue的工作思想,本质上,将jQ视为一个对Vue适配度不高的Vue插件就行了,双向绑定工作需要你

安防摄像头网页无插件直播流媒体服务器EasyNVR在IE浏览器下的 pointer-events- none前端兼容性调试

背景说明由于互联网的飞速发展,传统安防摄像头的视频监控直播与互联网直播相结合是大势所趋。传统安防的直播大多在一个局域网内,在播放的客户端上也是有所限制,一般都需要OCXWeb插件进行直播。对于安防监控

css3支持哪些浏览器?

CSS3带来众多全新的设计体验,但有一个问题值得考虑:浏览器对CSS3特性的兼容情况如何?因为页面最终离不开用浏览器来渲染,并不是所有浏览器都完全支持CSS3的特性。有时花时间写的效果只能在特定的浏览

css不同浏览器兼容性问题怎么解决?

css不同浏览器兼容性问题的解决方案1.浏览器CSS样式初始化由于每个浏览器的css默认样式不尽相同,所以最简单有效的方式就是对其进行初始化,相信很多朋友都写过这样的代码,在所有CSS开始前,先把ma

浏览器字体大小怎么调?

浏览器调整字体大小的方法1、打开浏览器2、打开浏览器菜单,点击设置3、切换到界面设置4、选择自定义字体大小5、更改字体字号,在右边可以看到字体的变化6、重启浏览器,更改即可生效

IE浏览器页面显示不全怎么办?

快速修复浏览器方案(鉴于系统环境不同→请活学活用以下方法→根据具体情况决定做哪些)1、打开浏览器,点“工具”→“管理加载项”那里禁用所有可疑插件,或者你能准确知道没问题的保留。然后→工具→INTERN

浏览器控制台打不开怎么办

浏览器控制台打不开怎么办浏览器控制台打不开可能是网页禁用了f12按键和右键网页的功能,解决方法是使用浏览器的功能按钮打开。不同浏览器略有不同,但基本都能在菜单中找到。1、chrome打开方式:点击右上

浏览器中的JavaScript:什么是文档对象模型?什么是DOM操作?

JavaScript并没有那么糟糕。作为运行在浏览器中的脚本语言,它对于网页操作非常有用。在本文中,我们将看到可以用哪些手段来修改HTML文档和交互。什么是文档对象模型?文档对象模型是在浏览器中一切的

深度解析微信域名经常被封的防封方案与已被封域名强制浏览器打开的防封短链接实现!

很多做H5(QP、BC、CP)的朋友都会经常遇到域名被微信秒封的情况。导致推广出去的二维码和链接用户打不开,这样会错失很多流量。这个问题一直让很多朋友头疼,因为微信推广的效率确实很理想,用户量的裂变也

qq浏览器不支持css3怎么办?

qq浏览器不支持css3怎么办?css3属性,比如keyframe和animation都需要加webkit、ms前缀,针对手机不同浏览器可能还要加更多前缀。以此达到适配所以浏览器的目的。解决qq浏览器

如何在浏览器中获取 Production Mode 的 React 实例

https://github.com/LiuuY/Blog...在ProductionMode下,React并没有暴露其实例。无论什么原因如果你要获取的话可以参考以下方法。条件浏览器安装了ReactD