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 相关文章推荐
JQUERY CHECKBOX全选,取消全选,反选方法三
Aug 30 Javascript
js href的用法
May 13 Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
Nov 19 Javascript
Js操作树节点自动折叠展开的几种方法
May 05 Javascript
js+CSS实现弹出居中背景半透明div层的方法
Feb 26 Javascript
整理Javascript函数学习笔记
Dec 01 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
Sep 05 Javascript
js判断出两个字符串最大子串的函数实现方法
Nov 01 Javascript
jQuery使用方法
Feb 04 Javascript
Vee-Validate的使用方法详解
Sep 22 Javascript
解决vue脚手架项目打包后路由视图不显示的问题
Sep 20 Javascript
jQuery实现的导航条点击后高亮显示功能示例
Mar 04 jQuery
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如何解决网站大流量与高并发的问题
2011/06/25 PHP
php+highchats生成动态统计图
2014/05/21 PHP
php实现爬取和分析知乎用户数据
2016/01/26 PHP
全面解读PHP的Yii框架中的日志功能
2016/03/17 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
什么是JavaScript
2009/08/13 Javascript
数组Array进行原型prototype扩展后带来的for in遍历问题
2010/02/07 Javascript
js中iframe调用父页面的方法
2014/10/30 Javascript
JavaScript设计模式之单件模式介绍
2014/12/28 Javascript
js学习阶段总结(必看篇)
2016/06/16 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
Vue循环组件加validate多表单验证的实例
2018/09/18 Javascript
JS执行控制之节流模式实例分析
2018/12/21 Javascript
vue生命周期与钩子函数简单示例
2019/03/13 Javascript
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
JavaScript 类的封装操作示例详解
2020/05/16 Javascript
[55:44]完美世界DOTA2联赛决赛 FTD vs Phoenix 第二场 11.08
2020/11/11 DOTA
Python制作数据导入导出工具
2015/07/31 Python
Python使用base64模块进行二进制数据编码详解
2018/01/11 Python
python实现决策树、随机森林的简单原理
2018/03/26 Python
python 调用有道api接口的方法
2019/01/03 Python
python 利用文件锁单例执行脚本的方法
2019/02/19 Python
Python3实现的简单工资管理系统示例
2019/03/12 Python
基于python的itchat库实现微信聊天机器人(推荐)
2019/10/29 Python
浅谈python 调用open()打开文件时路径出错的原因
2020/06/05 Python
美国性感内衣店:Yandy
2018/06/12 全球购物
为您的家、后院、车库等在线购物:Spreetail
2019/06/17 全球购物
Sisley法国希思黎美国官方网站:享誉全球的奢华植物美容品牌
2020/06/27 全球购物
表演方阵解说词
2014/02/08 职场文书
乡镇网格化管理实施方案
2014/03/23 职场文书
庆祝国庆节演讲稿2014
2014/09/19 职场文书
校运动会广播稿300字
2014/10/07 职场文书
总经理司机岗位职责
2015/04/10 职场文书
环保宣传语大全
2015/07/13 职场文书
使用Springboot实现健身房管理系统
2021/07/01 Java/Android