javascript 限制输入和粘贴(IE,firefox测试通过)


Posted in Javascript onNovember 14, 2008
window["MzBrowser"] ={}; 
(function() 
{ 
if(MzBrowser.platform) return; 
var ua = window.navigator.userAgent; 
MzBrowser.platform = window.navigator.platform; 
MzBrowser.firefox = ua.indexOf("Firefox") > 0; 
MzBrowser.opera = typeof(window.opera) == "object"; 
MzBrowser.ie = ! MzBrowser.opera && ua.indexOf("MSIE") > 0; 
MzBrowser.mozilla = window.navigator.product == "Gecko"; 
MzBrowser.netscape = window.navigator.vendor == "Netscape"; 
MzBrowser.safari = ua.indexOf("Safari") > - 1; 
if(MzBrowser.firefox) var re = /Firefox(\s|\/)(\d+(\.\d+)?)/; 
else if(MzBrowser.ie) var re = /MSIE( )(\d+(\.\d+)?)/; 
else if(MzBrowser.opera) var re = /Opera(\s|\/)(\d+(\.\d+)?)/; 
else if(MzBrowser.netscape) var re = /Netscape(\s|\/)(\d+(\.\d+)?)/; 
else if(MzBrowser.safari) var re = /Version(\/)(\d+(\.\d+)?)/; 
else if(MzBrowser.mozilla) var re = /rv(\:)(\d+(\.\d+)?)/; 
if("undefined" != typeof(re) && re.test(ua)) 
MzBrowser.version = parseFloat(RegExp.$2); 
} 
)(); 
function upLoadKey(e, object) 
{ 
if((document.all) ? true : false) 
{ 
window.event.keyCode == 9 ? (window.event.returnValue = true) : (window.event.returnValue = false); 
} 
else 
{ 
if(object.value == "" && typeof e.which == "number")e.preventDefault(); 
if(object.value != "") object.blur(); 
} 
} 
function version(object) 
{ 
if(MzBrowser.firefox && MzBrowser.version == 2)object.blur(); 
} 
function clearValue(id) 
{ 
var up = (typeof id == "string") ? document.getElementById(id) : id; 
if (typeof up != "object") return null; 
var tt = document.createElement("span"); 
tt.id = "__tt__"; 
up.parentNode.insertBefore(tt, up); 
var tf = document.createElement("form"); 
tf.appendChild(up); 
document.getElementsByTagName("body")[0].appendChild(tf); 
tf.reset(); 
tt.parentNode.insertBefore(up, tt); 
tt.parentNode.removeChild(tt); 
tt = null; 
tf.parentNode.removeChild(tf); 
}

// 页面代码
<html> 
<head> 
<script language="javascript" src="upLoad.js"></script> 
</head> 
<body> 
<input name="textfield3" type="file" class="input" id="textfield3" size="30" value="" ondrag="return false;" oncut="return false;" onkeydown="upLoadKey(event,this);" onpaste="return false;" onmousedown="document.oncontextmenu = function() { return false;}" onmouseout="document.oncontextmenu = function() { return true;};version(this);" tabIndex = -1/> <input type="button" id="clear" value="清 空" onclick="clearValue('textfield3');"/> 
</body> 
</html>
Javascript 相关文章推荐
Javascript模块模式分析
May 16 Javascript
基于jQuery的计算文本框字数的代码
Jun 06 Javascript
基于JQuery的类似新浪微博展示信息效果的代码
Jul 23 Javascript
jquery动态切换背景图片的简单实现方法
May 14 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
Dec 03 Javascript
Vue.js常用指令的使用小结
Jun 23 Javascript
webpack中CommonsChunkPlugin详细教程(小结)
Nov 09 Javascript
React组件中的this的具体使用
Feb 28 Javascript
基于iScroll实现内容滚动效果
Mar 21 Javascript
详解VueJs中的V-bind指令
May 03 Javascript
详解在vue-test-utils中mock全局对象
Nov 07 Javascript
vant 自定义 van-dropdown-item的用法
Aug 05 Javascript
javascript 出生日期和身份证判断大全
Nov 13 #Javascript
Ajax,UTF-8还是GB2312 eval 还是execScript
Nov 13 #Javascript
刷新页面实现方式总结(HTML,ASP,JS)
Nov 13 #Javascript
火狐浏览器(firefox)下获得Event对象以及keyCode
Nov 13 #Javascript
javascript vvorld 在线加密破解方法
Nov 13 #Javascript
javascript css float属性的特殊写法
Nov 13 #Javascript
javascript 命名空间以提高代码重用性
Nov 13 #Javascript
You might like
PHP实现上传文件并存进数据库的方法
2015/07/16 PHP
PHP函数shuffle()取数组若干个随机元素的方法分析
2016/04/02 PHP
动态刷新 dorado树的js代码
2009/06/12 Javascript
javascript 读取图片文件的大小
2009/06/25 Javascript
jQuery UI-Draggable 参数集合
2010/01/10 Javascript
浅析用prototype定义自己的方法
2013/11/14 Javascript
Jquery on方法绑定事件后执行多次的解决方法
2016/06/02 Javascript
jquery checkbox无法用attr()二次勾选问题的解决方法
2016/07/22 Javascript
JS中正则表达式只有3种匹配模式(没有单行模式)详解
2016/07/28 Javascript
零基础轻松学JavaScript闭包
2016/12/30 Javascript
js获取浏览器和屏幕的各种宽度高度
2017/02/22 Javascript
bootstrap paginator分页插件的两种使用方式实例详解
2017/11/14 Javascript
简单分析js中的this的原理
2019/08/31 Javascript
jQuery实现简单弹幕效果
2019/11/28 jQuery
[00:44]2016完美“圣”典 风云人物:Mikasa宣传片
2016/12/07 DOTA
[00:30]明星选手化身超级英雄!2018DOTA2亚洲邀请赛全明星赛来临!
2018/04/06 DOTA
[43:41]OG vs Newbee 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
Python入门篇之数字
2014/10/20 Python
pygame学习笔记(5):游戏精灵
2015/04/15 Python
Windows下Python使用Pandas模块操作Excel文件的教程
2016/05/31 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
python 请求服务器的实现代码(http请求和https请求)
2018/05/25 Python
python使用pygame框架实现推箱子游戏
2018/11/20 Python
python 实现调用子文件下的模块方法
2018/12/07 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
2020/01/20 Python
对Tensorflow中tensorboard日志的生成与显示详解
2020/02/04 Python
matplotlib之pyplot模块之标题(title()和suptitle())
2021/02/22 Python
HTML5新增元素如何兼容旧浏览器有哪些方法
2014/05/09 HTML / CSS
Wiggle澳大利亚:自行车、跑步、游泳商店
2020/11/07 全球购物
美国最大最全的亚洲购物网站:美国亚米网(Yamibuy)
2020/05/05 全球购物
售后服务经理岗位职责
2014/02/25 职场文书
加强作风建设工作总结
2014/10/23 职场文书
商业计划书范文
2019/04/24 职场文书
2021-4-5课程——SQL Server查询【3】
2021/04/05 SQL Server
关于Javascript闭包与应用的详解
2021/04/22 Javascript
TV动画《史上最强大魔王转生为村民A》番宣CM公布
2022/04/01 日漫