处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外

来源:互联网 发布:百度产品经理待遇 知乎 编辑:程序博客网 时间:2024/06/13 21:25
//处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外function banBackSpace(e) {var ev=e||window.event;//获取event对象var obj=ev.target||ev.srcElement;//获取事件源var t=obj.type||obj.getAttribute('type');//获取事件源类型//获取作为判断条件的事件类型var vReadOnly=obj.readOnly;var vDisabled=obj.disabled;//处理undefined值情况vReadOnly=(vReadOnly==undefined)?false:vReadOnly;vDisabled=(vDisabled==undefined)?true:vDisabled;//当敲Backspace键时,事件源类型为密码或单行、多行文本的,//并且readOnly属性为true或disabled属性为true的,则退格键失效var flag1=ev.keyCode==8&&(t=="password"||t=="text"||t=="textarea")&&(vReadOnly==true||vDisabled==true);//当敲Backspace键时,事件源类型非密码或单行、多行文本的,则退格键失效var flag2=ev.keyCode==8&&t!="password"&&t!="text"&&t!="textarea";//判断if(flag2||flag1)return false;}//禁止退格键 作用于Firefox、Operadocument.onkeypress=banBackSpace;//禁止退格键 作用于IE、Chromedocument.onkeydown=banBackSpace;

原创粉丝点击