Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享

前端之家收集整理的这篇文章主要介绍了Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在 Extjs 开发中,我们需要屏蔽一些键盘按键,来避免用户在使用键盘操作的过程中不小心按到这些快捷键造成输入信息丢失等问题.

Ext.getDoc().on("contextmenu",function(e){ e.stopEvent(); }); if(document.addEventListener){ document.addEventListener("keydown",maskBackspace,true); }else{ document.attachEvent("onkeydown",maskBackspace); } function maskBackspace(event){ var event = event || window.event; //标准化事件对象 var obj = event.target || event.srcElement; var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode; if(keyCode == 8){ if(obj!=null && obj.tagName!=null && (obj.tagName.toLowerCase() == "input" || obj.tagName.toLowerCase() == "textarea")){ event.returnValue = true ; if(Ext.getCmp(obj.id)){ if(Ext.getCmp(obj.id).readOnly) { if(window.event) event.returnValue = false ; //or event.keyCode=0 else event.preventDefault(); //for ff } } }else{ if(window.event) event.returnValue = false ; // or event.keyCode=0 else event.preventDefault(); //for ff } } } var map = new Ext.KeyMap(document,[ { key: [116],// F5 fn: function(){ },stopEvent: true,scope: this },{ key: [37,39,115],//方向键左,右,F4 alt: true,fn: function(){ },{ key: [82],// ctrl + R ctrl: true,scope: this }]); map.enable();

});

禁止在IE8中使用 F5 刷新还需加上代码

原文链接:https://www.f2er.com/js/48057.html

猜你在找的JavaScript相关文章