Ext JS框架程序中阻止鍵盤觸發(fā)回退或者刷新頁(yè)面的代碼分享
在 Extjs 開(kāi)發(fā)中,我們需要屏蔽一些鍵盤按鍵,來(lái)避免用戶在使用鍵盤操作的過(guò)程中不小心按到這些快捷鍵造成輸入信息丟失等問(wèn)題.
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; //標(biāo)準(zhǔn)化事件對(duì)象 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;}">
相關(guān)文章
常用Extjs工具:Extjs.util.Format使用方法
常用Extjs工具:Extjs.util.Format使用方法,需要的朋友可以參考下2012-03-03Extjs中的GridPanel隱藏列會(huì)顯示在menuDisabled中解決方法
在Extjs中的GridPanel會(huì)有這樣的情況,隱藏列會(huì)顯示在menuDisabled中,但是這個(gè)一般沒(méi)有什么用處,只是用于后臺(tái)取值的作用,感興趣的朋友可以了解下啊,希望本文對(duì)你有所幫助2013-01-01Extjs學(xué)習(xí)過(guò)程中新手容易碰到的低級(jí)錯(cuò)誤積累
新手在學(xué)習(xí)Extjs過(guò)程中的低級(jí)錯(cuò)誤積累2010-02-02學(xué)習(xí)ExtJS 訪問(wèn)容器對(duì)象
ExtJS 訪問(wèn)容器對(duì)象使用說(shuō)明,需要的朋友可以參考下。2009-10-10Extjs學(xué)習(xí)筆記之一 初識(shí)Extjs之MessageBox
去官網(wǎng)下載好extjs的壓縮包,解壓縮之后得到如下目錄結(jié)構(gòu)。2010-01-01Extjs grid panel自帶滾動(dòng)條失效的解決方法
對(duì)gridPanel中的stroe數(shù)據(jù)進(jìn)行過(guò)濾,所以有時(shí)候總是導(dǎo)致gridPanel自身所帶的scrollbar失效,好了,現(xiàn)在來(lái)說(shuō)說(shuō)怎么解決scrollbar失效2014-09-09ExtJS Ext.MessageBox.alert()彈出對(duì)話框詳解
Ext.MessageBox是一個(gè)工具類,他繼承自O(shè)biect對(duì)象,用來(lái)生成各種風(fēng)格的信息提示對(duì)話框,Ext.Msg是該類的別名,使用Ext.MessageBox和用Ext.Msg效果是一樣的,而后者提供了更簡(jiǎn)單的方式。2010-04-04ExtJS下 Ext.Direct加載和提交過(guò)程排錯(cuò)小結(jié)
基礎(chǔ)夯實(shí)一點(diǎn),會(huì)有好處的,排錯(cuò)的時(shí)候就體現(xiàn)出來(lái)了,下面就Ext.Direct做一些排錯(cuò)筆記與大家一一分享,感興趣的朋友可以參考下哈2013-04-04