Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
更新时间:2016年06月07日 18:18:16 作者:chamcon
键盘上的F5或者退格键等按键一般来说会触发页面的后退或者刷新事件,然而这些在前端用代码是可以给屏蔽掉的,这里我们就来看一下Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud)
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun)
在 Extjs 开发中,我们需要屏蔽一些键盘按键,来避免用户在使用键盘操作的过程中不小心按到这些快捷键造成输入信息丢失等问题.
Ext.onReady(function(){ Ext.WindowMgr.zseed = 10000; Ext.QuickTips.init(); 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(){ }, stopEvent: true, scope: this }, { key: [82], // ctrl + R ctrl: true, fn: function(){ }, stopEvent: true, scope: this }]); map.enable(); });
禁止在IE8中使用 F5 刷新还需加上代码 :
<body onkeydown="if(event.keyCode==116){event.keyCode=0;return false;}">
相关文章
Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法
这篇文章主要介绍了Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法,本文中的事件指collapsebody和expandbody事件,需要的朋友可以参考下2014-08-08解决ExtJS在chrome或火狐中正常显示在ie中不显示的浏览器兼容问题
由于开发过程中大多用chrome来调试,很少在ie中调试(现在两者都要兼顾),导致最后在ie中页面不能正常加载,当时那个囧啊,看到ie报的错,我都想哭,连出错的堆栈信息都没有(这一点,ie做的真不好),无从下手啊2013-01-01extjs3 combobox取value和text案例详解
使用combobox时,它有一个hiddenName的属性,专门用于提交combobox中value的值,接下来介绍extjs3 combobox如何取value和text值,感兴趣的朋友可以不要错过了啊2013-02-02
最新评论