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 相关文章推荐
jQuery 学习第五课 Ajax 使用说明
May 17 Javascript
js切换光标示例代码
Oct 10 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
Apr 08 Javascript
JavaScript代码性能优化总结篇
May 15 Javascript
利用css+原生js制作简单的钟表
Apr 07 Javascript
无阻塞加载js,防止因js加载不了影响页面显示的问题
Dec 18 Javascript
Vue-Router实现页面正在加载特效方法示例
Feb 12 Javascript
JavaScript实现256色转灰度图
Feb 22 Javascript
Vue实现自带的过滤器实例
Mar 09 Javascript
webpack配置之后端渲染详解
Oct 26 Javascript
在axios中使用params传参的时候传入数组的方法
Sep 25 Javascript
ES2020 已定稿,真实场景案例分析
May 25 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
ThinkPHP框架实现session跨域问题的解决方法
2014/07/01 PHP
简单的php+mysql聊天室实现方法(附源码)
2016/01/05 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
JS对img进行操作(换图片/切图/轮换/停止)
2013/04/17 Javascript
GridView中获取被点击行中的DropDownList和TextBox中的值
2013/07/18 Javascript
js导出txt示例代码
2014/01/14 Javascript
jquery实现类似淘宝星星评分功能实例
2014/09/12 Javascript
AngularJS 实现按需异步加载实例代码
2015/10/18 Javascript
快速使用Bootstrap搭建传送带
2016/05/06 Javascript
ES6记录异步函数的执行时间详解
2016/08/31 Javascript
Vue.js路由实现选项卡简单实例
2019/07/24 Javascript
微信小程序渲染性能调优小结
2019/07/30 Javascript
Python实现Linux下守护进程的编写方法
2014/08/22 Python
Python实现Const详解
2015/01/27 Python
Python实现Tab自动补全和历史命令管理的方法
2015/03/12 Python
django传值给模板, 再用JS接收并进行操作的实例
2018/05/28 Python
python 读取txt,json和hdf5文件的实例
2018/06/05 Python
Django之Mode的外键自关联和引用未定义的Model方法
2018/12/15 Python
解决python中画图时x,y轴名称出现中文乱码的问题
2019/01/29 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
Python3创建Django项目的几种方法(3种)
2020/06/03 Python
Python使用OpenPyXL处理Excel表格
2020/07/02 Python
浅析Python 序列化与反序列化
2020/08/05 Python
Python 3.9的到来到底是意味着什么
2020/10/14 Python
HTML5 移动页面自适应手机屏幕四类方法总结
2017/08/17 HTML / CSS
PacSun官网:加州生活方式服装、鞋子和配饰
2018/03/10 全球购物
中级会计职业生涯规划范文
2014/01/16 职场文书
理财投资建议书
2014/03/12 职场文书
大学生学雷锋活动总结
2014/06/26 职场文书
计划生育汇报材料
2014/12/26 职场文书
先进工作者个人总结
2015/02/15 职场文书
政工师工作总结2015
2015/05/26 职场文书
运动会三级跳加油稿
2015/07/21 职场文书
go类型转换及与C的类型转换方式
2021/05/05 Golang
利用Python+OpenCV三步去除水印
2021/05/28 Python
pytorch 实现多个Dataloader同时训练
2021/05/29 Python