IE浏览器兼容Firefox的JS脚本的代码


Posted in Javascript onOctober 23, 2008

1.window.event兼容脚本
2.屏蔽Form提交事件
3.获取事件源
4.添加事件兼容写法
5.Firefox注册innerText写法
6.长度
7.父控件下的子控件
8.XmlHttp
1.window.event兼容脚本
function getEvent(){ //获取浏览器事件,同时兼容ie和ff的写法
if(document.all) return window.event;
func=getEvent.caller;
while(func!=null){
var arg0=func.arguments[0];
if(arg0){
if((arg0.constructor==Event

arg0.constructor ==MouseEvent)

(typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){
return arg0;
}
}
func=func.caller;
}
return null;
}
每次用事件之前Firefox都需要用getEvent()获取一下,否则就是空
2.屏蔽Form提交事件
event.returnValue=false;// for IE
evt.preventDefault();//for firefox
3.获取事件源
var source=event.srcElement //IE
var source=event.target //firefox
4.添加事件兼容写法
function addEvent(oElement,sEvent,func){
if (oElement.attachEvent){
oElement.attachEvent(sEvent,func);
}
else{
sEvent=sEvent.substring(2,sEvent.length);
oElement.addEventListener(sEvent,func,false);
}
}
用法:addEvent(window,"onload",Start);
5.Firefox注册innerText写法
//注册firefox innerText
HTMLElement.prototype.__defineGetter__("innerText",
function(){
var anyString = "";
var childS = this.childNodes;
for(var i=0; i if(childS[i].nodeType==1)
anyString += childS[i].tagName=="BR" ? '\n' : childS[i].innerText;
else if(childS[i].nodeType==3)
anyString += childS[i].nodeValue;
}
return anyString;
}
);
HTMLElement.prototype.__defineSetter__("innerText",
function(sText){
this.textContent=sText;
}
);
6.长度:FireFox长度必须加“px”,IE无所谓
7.父控件下的子控件:IE是“children”,FireFox是“childNodes”
8.XmlHttp
在IE中,XmlHttp.send(content)方法的content可以为空,而firefox则不能为空,应该用send(" "),否则会出现411错误

Javascript 相关文章推荐
为什么要在引入的css或者js文件后面加参数的详细讲解
May 03 Javascript
JS之Date对象和获取系统当前时间详解
Jan 13 Javascript
php is_numberic函数造成的SQL注入漏洞
Mar 10 Javascript
jQuery中对未来的元素绑定事件用bind、live or on
Apr 17 Javascript
JavaScript中的函数重载深入理解
Aug 04 Javascript
JavaScript 函数模式详解及示例
Sep 07 Javascript
jQuery选择器_动力节点Java学院整理
Jul 05 jQuery
微信小程序使用navigateTo数据传递的实例
Sep 26 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
Oct 17 Javascript
uni-app 支持多端第三方地图定位的方法
Jan 03 Javascript
Vue 微信端扫描二维码苹果端却只能保存图片问题(解决方法)
Jan 19 Javascript
微信小程序12行js代码自己写个滑块功能(推荐)
Jul 15 Javascript
Javascript客户端将指定区域导出到Word、Excel的代码
Oct 22 #Javascript
checkbox 多选框 联动实现代码
Oct 22 #Javascript
javascript网页关闭时提醒效果脚本
Oct 22 #Javascript
javascript Select标记中options操作方法集合
Oct 22 #Javascript
JavaScript Undefined,Null类型和NaN值区别
Oct 22 #Javascript
javascript TextArea动态显示剩余字符
Oct 22 #Javascript
Javascript this关键字使用分析
Oct 21 #Javascript
You might like
php上传apk后自动提取apk包信息的使用(示例下载)
2013/04/26 PHP
PHP动态生成javascript文件的2个例子
2014/04/11 PHP
PHP常用的排序和查找算法
2015/08/06 PHP
关于Laravel参数验证的一些疑与惑
2019/11/19 PHP
PHP正则之正向预查与反向预查讲解与实例
2020/04/06 PHP
jquery点击页面任何区域实现鼠标焦点十字效果
2013/06/21 Javascript
js中opener与parent的区别详细解析
2014/01/14 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
js实现上传图片预览的方法
2015/02/09 Javascript
js实现鼠标划过给div加透明度的方法
2015/05/25 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
喜大普奔!jQuery发布 3.0 最终版
2016/06/12 Javascript
基于jQuery实现多标签页切换的效果(web前端开发)
2016/07/24 Javascript
Vue.js计算属性computed与watch(5)
2016/12/09 Javascript
JavaScript数据结构中栈的应用之表达式求值问题详解
2017/04/11 Javascript
NodeJS使用七牛云存储上传文件的方法
2017/07/24 NodeJs
javascript 取小数点后几位几种方法总结
2017/08/02 Javascript
详解Webpack多环境代码打包的方法
2018/08/03 Javascript
js实现简单五子棋游戏
2020/05/28 Javascript
[40:05]LGD vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
编写Python脚本抓取网络小说来制作自己的阅读器
2015/08/20 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
详解python 爬取12306验证码
2019/05/10 Python
Django外键(ForeignKey)操作以及related_name的作用详解
2019/07/29 Python
解决Tensorboard可视化错误:不显示数据 No scalar data was found
2020/02/15 Python
Python如何设置指定窗口为前台活动窗口
2020/08/12 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
英国最大的化装舞会服装网站:Fancydress.com
2017/08/15 全球购物
教育科学研究生自荐信
2013/10/09 职场文书
项目管理计划书
2014/01/09 职场文书
销售员岗位职责范本
2014/02/03 职场文书
学生社团文化节开幕式主持词
2014/03/28 职场文书
捐献物资倡议书范文
2014/05/19 职场文书
县委务虚会发言材料
2014/10/20 职场文书
四风问题专项整治工作情况报告
2014/10/28 职场文书