`

有关浏览器的退格键问题(转)

阅读更多
bbs : http://topic.csdn.net/u/20100812/10/b20725d5-3862-4407-b5a9-096d0643da50.html

怎么禁用浏览器的退格键,就是按退格键不返回上一个页面,或者弹出提示,然后跳到指定的页面??

这个是别人写的一个js。
<script type="text/javascript">
/*禁用backspace键的后退功能,但是可以删除文本内容*/
document.onkeydown = check;
function check(e) {
    var code;
    if (!e) var e = window.event;
    if (e.keyCode) code = e.keyCode;
    else if (e.which) code = e.which;
    if (((event.keyCode == 8) &&   //BackSpace 
         ((event.srcElement.type != "text" && 
         event.srcElement.type != "textarea" && 
         event.srcElement.type != "password") || 
         event.srcElement.readOnly == true)) || 
        ((event.ctrlKey) && ((event.keyCode == 78) || (event.keyCode == 82)) ) ||    //CtrlN,CtrlR 
        (event.keyCode == 116) ) {      //F5 
        event.keyCode = 0; 
        event.returnValue = false; 
    }
    return true;
}
</script>


楼上这样只能禁止键盘的backspace,如果用户去点浏览器上的按钮呢

试试这个
<a href=# onclick="location.replace('b.html');">bbbbbbbbbb</a>


引用
/*禁用backspace键的后退功能,但是可以删除文本内容*/
document.onkeydown = check;
function check(e) {....

这个方法好像在firefox下不起作用啊??


在firefox下不能用,主要是兼容性问题,firefox下有不少特有的方法,可以改一下。
<script type="text/javascript">
/*禁用backspace键的后退功能,但是可以删除文本内容*/
document.onkeydown = check;
function check(e) {
    var code;
    if (!e) var e = window.event;
    if (e.keyCode) code = e.keyCode;
    else if (e.which) code = e.which;
    var obj = e.srcElement?e.srcElement:e.target;
    var keycode = e.keyCode?e.keyCode:e.which;
    if (((keycode == 8) &&   //BackSpace 
         ((obj.type != "text" && 
         obj.type != "textarea" && 
         obj.type != "password") || 
         obj.readOnly == true)) || 
        ((e.ctrlKey) && ((keycode == 78) || (keycode == 82)) ) ||    //CtrlN,CtrlR
        (keycode == 116) ) {                                                   //F5 
        if(window.event){
            event.keyCode = 0; 
            event.returnValue = false; 
        }else{
            e.preventDefault();
        }
    }
    return true;
}
</script>

分享到:
评论

相关推荐

    JS禁用浏览器退格键实现思路及代码

    关于浏览器退格键的禁用,可行的方法有很多,在本文将为大家详细介绍下在js中时如何做到的,有需求的各位可以参考下

    prevent-backspace:防止退格键在浏览器中返回

    是一个客户端 JavaScript 组件,可防止退格键在浏览器中返回。 您可以将它与或。 npm / 浏览器化 npm install prevent-backspace 成分 component install jprichardson/prevent-backspace 例子 var ...

    JQuery实现防止退格键返回的方法

    本文实例讲述了JQuery实现防止退格键返回的方法。分享给大家供大家参考。具体实现方法如下: 代码如下://浏览器中Backspace不可用  $(document).keydown(function(e){   var keyEvent;   if(e.keyCode==8){  ...

    meteor-prevent-backspace:防止退格键在浏览器中返回

    是一个客户端 JavaScript 组件,可防止退格键在浏览器中返回。 用法 将项目添加到您的 Meteor 项目: meteor add uzumaxy:prevent-backspace 。 之后退格将不会用于导航。 执照 meteor-prevent-backspace项目获得了...

    javascript禁用退格和回车键

    javascript编写的禁用退格和回车键,兼容所有主流的浏览器,ie6,7,8,9,10 FireFox,谷歌。

    GoodbyeBackspaceChrome:消除了退格键以不返回到上一页的情况。 很简单!

    再见退格键(Chrome浏览器扩展程序) 消除了退格键以不返回到上一页的情况。 很简单! 再也不会在按Backspace键时返回上一页了。 只需安装再见Backspace! 和voilà...其余部分由扩展程序完成。 尽情享受Chrome的...

    backspace-block:Bower 组件用于在用户不在输入字段时阻止退格按钮工作,以便浏览器不会触发后退按钮

    特征将此项目添加到您的应用程序后,退格键只会在您处于输入字段或文本区域时由浏览器注册。 没有任何依赖关系才能正常运行。学分这起源于 JP Richardson 的优秀库 ,它是作为对StackOverflow 问题的答案的重新打包...

    双塔「Backstay」-crx插件

    停止退格键快捷方式带您回到上一页。 您是否曾经按过“退格”键才发现Chrome已将您带到上一页? Chrome浏览器具有用于“退格”按钮的键盘快捷键,按下该快捷键可将您带到上一个网址。 大多数用户不使用此功能,而...

    浏览器脚本:用于QOL改进的用户脚本集合

    返回热键: Ctrl +退格键可转到上一个网页。 带编号的google链接:按下相应的num按钮访问google搜索结果。 切换Reddit侧栏: Ctrl + B可以打开或关闭Reddit侧栏。 myvideogamelist排序器:按分数自动对游戏进行排序

    吉特盒子(Gidot Box) v2.0.7 绿色版.rar

    清空吉特盒子上的关键字:esc或者ctrl 退格键 查找并切换历史搜索记录:键盘上下方向键 Gidot box配合百度引擎的另类小技巧: 1、计算器:直接输入算式并回车,则百度显示计算后的结果,比如输入:12345678 ...

    退格导航(适用于Linux)「Backspace navigation (for Linux)」-crx插件

    这个简单的扩展允许您使用退格键返回浏览器历史中的一页(当没有输入一些... 这个简单的扩展名使您可以使用Backspace键在浏览器历史记录中返回一页(当未在某些输入字段中键入时),或使用shift + Backspace前进。该...

    mebm:零依赖的基于浏览器的视频编辑器

    用法暂停/播放的空间选择图层以对其进行操作(单击时间线或侧边栏) Shift +滚动或捏以缩放文本和图像拖动以移动它们箭头键在关键点之间跳转退格键删除关键点进口通过拖动视频图像或音频文件通过点击“ +媒体” 通过...

    Go Back With Backspace-crx插件

    重新启用退格键作为后退导航按钮(写文本时除外)。 使用退格按钮返回! 此扩展程序将退格键重新启用为后退导航按钮-除非您正在编写文本。 2.1的新增功能:================= *现在,选项中的两个URL列表接受“ *”...

    Backspace navigation (for Linux)-crx插件

    语言:English 这个简单的扩展名使您可以使用Backspace键在浏览器历史记录中返回上一页(当不输入某些...该扩展程序适用于Linux用户(因为Chrome for Linux不具有此功能),但不应破坏Windows / Mac上的内置退格键导航。

    Chrome Backspace-crx插件

    语言:한국어 Chrome退格键按下。 您是浏览器的历史记录 退格恢复

    Backspace-1.4.1.zip

    概述:Backspace键使退格作为后退导航的快捷方式。 浏览器禁用这种行为,前一段时间,而这个扩展可以帮助谁想要回用户。 描述: Enablegoingbackbypressingbackspacekey Backspace键使退格作为后退导航的快捷方式。 ...

    Calculator

    最初,在添加键盘支持时,我使用keypress事件来调用函数,但由于不推荐使用keypress,但后来我不得不更改自己的调用方法,但我也意识到退格键没有任何unicode。 我为我的keyboardEvent切换为keydown,

Global site tag (gtag.js) - Google Analytics