处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外
- //处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外
- function forbidBackSpace(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、Opera
- document.onkeypress = forbidBackSpace;
- //禁止后退键 作用于IE、Chrome
- document.onkeydown = forbidBackSpace; http://blog.csdn.net/maxuyang1987/article/details/9811843
处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外的更多相关文章
- JS禁止后退键(backspace)使浏览器后退
背景说明: 今天项目测试中,同事发现一个Bug,当键盘敲下后退键(Backspace)后,浏览器自动后退,不符合需求,故建议禁止浏览器后退键. 提出需求: 当键盘敲下后退键(Backspace)后 1 ...
- 【转】网页禁止后退键BackSpace的JavaScript实现(兼容IE、Chrome、Firefox、Opera)
var forbidBackSpace = function (e) { // 获取event对象 var ev = e || window.event; // 获取事件源 var obj = ev. ...
- js 禁止后退键
function doKey(e) { var ev = e || window.event; //获取event对象 var obj = ev.target || ev.srcElement; // ...
- 禁用后退键 BackSpace
<script language="JavaScript">document.onkeydown = check;function check(e) { var ...
- jQuery键盘事件绑定Enter键
<script> $(function(){ $(document).keydown(function(event){ if(event.keyCode==13){ $("#mo ...
- JS禁用键盘浏览器退格键
我们在真实的项目开发中经常会使用JS 对键盘上的一些按键进行禁用,常见的比如说退格键(backspace/ 后退键),我在一个项目中就遇到过在页面编辑的时候禁用掉退格键,因为退格键会发生页面后退,这样 ...
- WP开发笔记——阻止Back后退键
WP7中如何阻止Back后退键的后退事件呢? WP7上提供了物理的Back按键,获取Back物理键按下可以通过PhoneApplicationPage的BackKeyPress事件. 具体实现方法如下 ...
- C#窗体模拟键盘按键(组合键)产生事件 ---- 通过keybd_event()函数
如何模拟键盘按键触发产生的事件,比如模拟按下Alt + F4 关闭当前程序,Ctrl+Shift 切换输入法等 可以通过win32api 键盘事件 keybd_event() 来实现 1.定义键盘按键 ...
- C#窗体如何通过keybd_event()函数模拟键盘按键(组合键)产生事件
如何模拟键盘按键触发产生的事件,比如模拟按下Alt + F4 关闭当前程序,Ctrl+Shift 切换输入法等 可以通过win32api 键盘事件 keybd_event() 来实现 1.定义键盘按键 ...
随机推荐
- 接口返回buffer的16进制数据如何转换
我们请求接口数据经常会看到buffer数据,这是我们可以使用data.toString()就可以啦~
- codevs 2039 骑马修栅栏 USACO x
题目描述 Description Farmer John每年有很多栅栏要修理.他总是骑着马穿过每一个栅栏并修复它破损的地方. John是一个与其他农民一样懒的人.他讨厌骑马,因此从来不两次经过一个栅栏 ...
- Dancing Stars on Me
Dancing Stars on Me Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Ot ...
- [CSP-S模拟测试]:礼物(数学)
题目传送门(内部题80) 输入格式 第一行输入一个正整数$n$. 第二行到第$n+1$行每行两个正整数$a_i$和$b_i$表示第$i$个礼物中包含$a_i$个红宝石和$b_i$个绿宝石. 输出格式 ...
- 利用python进行数据分析--pandas入门1
随书练习,第五章 pandas入门1 # coding: utf-8 # In[1]: from pandas import Series, DataFrame # In[2]: import pa ...
- 基于python实现自动化办公学习笔记一
1.CSV(1)写csv文件 import csv def writecsv(path,data): with open(path, "w") as f: writer = csv ...
- CMD模块打包部署总结
目前线上系统利用Seajs做模板化,但是没有对js和css进行打包,在这次简历搜索优化项目里我尝试对gulp插件对Seajs模块打包. 安装gulp和相关插件 npm install -g gulp ...
- linux安装 redis
通过源码编译安装 1.下载源码包 wget http://download.redis.io/releases/redis-4.0.10.tar.gz 2.解压缩redis tar -zxf redi ...
- linux shell的一些配置
alias egrep='egrep --color=auto'alias fgrep='fgrep --color=auto'alias grep='grep --color=auto'alias ...
- HTML - form 表单提交
form 表单提交 数据发送 disabled:不发送 display_none:发送 type_hidden:发送 readonly:发送 测试 html: <!DOCTYPE html> ...