jquery防止退回键返回
2016-05-24 09:46
323 查看
最近在优化系统,发现被禁用的输入框在IE8中是有光标的,而在谷歌中没有,其他的浏览器没有看
用户的习惯是,有光标就可以输入,也可以退回,而用户点击退回键时,页面会跳到前一个页面,这导致用户体验度很差。
如何防止退回键返回,借鉴一下其他同仁的辛苦成果:
//浏览器中Backspace不可用
$(document).keydown(function(e){
var keyEvent;
if(e.keyCode==8){
var d=e.srcElement||e.target;
if(d.tagName.toUpperCase()=='INPUT'||d.tagName.toUpperCase()=='TEXTAREA'){
keyEvent=d.readOnly||d.disabled;
}else{
keyEvent=true;
}
}else{
keyEvent=false;
}
if(keyEvent){
e.preventDefault();
}
});
//只防止input和textarea 浏览器中Backspace仍可用
$(document).keydown(function(e){
var keyEvent;
if(e.keyCode==8){
var d=e.srcElement||e.target;
if(d.tagName.toUpperCase()=='INPUT'||d.tagName.toUpperCase()=='TEXTAREA'){
keyEvent=d.readOnly||d.disabled;
}
} else{
keyEvent=false;
}
if(keyEvent){
e.preventDefault();
}
});
event.preventDefault();阻止默认事件行为的触发。
用户的习惯是,有光标就可以输入,也可以退回,而用户点击退回键时,页面会跳到前一个页面,这导致用户体验度很差。
如何防止退回键返回,借鉴一下其他同仁的辛苦成果:
//浏览器中Backspace不可用
$(document).keydown(function(e){
var keyEvent;
if(e.keyCode==8){
var d=e.srcElement||e.target;
if(d.tagName.toUpperCase()=='INPUT'||d.tagName.toUpperCase()=='TEXTAREA'){
keyEvent=d.readOnly||d.disabled;
}else{
keyEvent=true;
}
}else{
keyEvent=false;
}
if(keyEvent){
e.preventDefault();
}
});
//只防止input和textarea 浏览器中Backspace仍可用
$(document).keydown(function(e){
var keyEvent;
if(e.keyCode==8){
var d=e.srcElement||e.target;
if(d.tagName.toUpperCase()=='INPUT'||d.tagName.toUpperCase()=='TEXTAREA'){
keyEvent=d.readOnly||d.disabled;
}
} else{
keyEvent=false;
}
if(keyEvent){
e.preventDefault();
}
});
event.preventDefault();阻止默认事件行为的触发。
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- JavaScript演示排序算法
- 2015-2016网页设计趋势分析 Web Design of Trends
- jQuery Ajax 跨域调用
- 移动端的长按事件
- jquery教程靠边站,一分钱不花让你免费学会jquery
- JQuery+Strusts1.x无刷新登录
- $.ajax()方法详解
- jQuery ajax - ajax() 方法
- JavaScript 各种遍历方式详解
- 数组方法汇总
- jQuery Html控件基本操作(日常收集整理)
- jQuery插件实现文字无缝向上滚动效果代码
- jQuery菜单插件用法实例
- JQuery 初体验(建议学习jquery)
- 基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
- Jquery实现的table最后一行添加样式的代码
- jQuery实现向下滑出的平滑下拉菜单效果
- jQuery 练习[一] 学习jquery的准备工作
- jquery获得页面元素的坐标值实现思路及代码