Firefox和IE浏览器兼容JS脚本写法小结


Posted in Javascript onJuly 07, 2008

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 相关文章推荐
怎么让脚本或里面的函数在所有图片都载入完毕的时候执行
Oct 17 Javascript
可实现多表单提交的javascript函数
Aug 01 Javascript
javascript globalStorage类代码
Jun 04 Javascript
jquery ready函数源代码研究
Dec 06 Javascript
详解JavaScript中的异常处理方法
Jun 16 Javascript
AngularJS表达式讲解及示例代码
Aug 16 Javascript
js面向对象实现canvas制作彩虹球喷枪效果
Sep 24 Javascript
AngularJS服务service用法总结
Dec 13 Javascript
Vue.js中轻松解决v-for执行出错的三个方案
Jun 09 Javascript
Vue响应式原理深入解析及注意事项
Dec 11 Javascript
Vue infinite update loop的问题解决
Apr 23 Javascript
JavaScript实现缓动动画
Nov 25 Javascript
图片自动缩小 点击放大
Jul 07 #Javascript
超级退弹代码
Jul 07 #Javascript
Javascript入门学习资料收集整理篇
Jul 06 #Javascript
javascript 火狐(firefox)不显示本地图片问题解决
Jul 05 #Javascript
javascript 火狐(firefox)不显示本地图片问题解决
Jul 05 #Javascript
用JS剩余字数计算的代码
Jul 03 #Javascript
javascript indexOf函数使用说明
Jul 03 #Javascript
You might like
PHP个人网站架设连环讲(一)
2006/10/09 PHP
PHP4实际应用经验篇(3)
2006/10/09 PHP
精美漂亮的php分页类代码
2013/04/02 PHP
yii2项目实战之restful api授权验证详解
2017/05/20 PHP
JS实现点击图片在当前页面放大并可关闭的漂亮效果
2013/10/18 Javascript
基于jQuery滑动杆实现购买日期选择效果
2015/09/15 Javascript
Jquery使用小技巧汇总
2015/12/29 Javascript
Angularjs整合微信UI(weui)
2016/03/15 Javascript
理解javascript中的Function.prototype.bind的方法
2017/02/03 Javascript
vue的diff算法知识点总结
2018/03/29 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
2018/06/27 Javascript
Echart折线图手柄触发事件示例详解
2018/12/16 Javascript
jQuery实现为table表格动态添加或删除tr功能示例
2019/02/19 jQuery
Vue el-autocomplete远程搜索下拉框并实现自动填充功能(推荐)
2019/10/25 Javascript
Vue自定义组件双向绑定实现原理及方法详解
2020/09/03 Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
2020/11/11 Javascript
[03:24]CDEC.Y赛前采访 努力备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
[01:04:31]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第二场 1月8日
2021/03/11 DOTA
Python下singleton模式的实现方法
2014/07/16 Python
用Python中的字典来处理索引统计的方法
2015/05/05 Python
Python中的hypot()方法使用简介
2015/05/18 Python
Python中的函数作用域
2018/05/07 Python
Linux 修改Python命令的方法示例
2018/12/03 Python
详解Python并发编程之从性能角度来初探并发编程
2019/08/23 Python
python3.7通过thrift操作hbase的示例代码
2020/01/14 Python
HTML5的结构和语义(2):结构
2008/10/17 HTML / CSS
Nebula美国官网:便携式投影仪
2019/03/15 全球购物
国家励志奖学金获奖感言
2014/01/09 职场文书
学历公证书范本
2014/04/09 职场文书
公司运动会策划方案
2014/05/25 职场文书
4s店销售经理岗位职责
2014/07/19 职场文书
优秀班主任先进事迹材料
2014/12/16 职场文书
2016入党积极分子党校培训心得体会
2016/01/06 职场文书
《思路决定出路》读后感3篇
2019/12/11 职场文书
SQL Server2019数据库之简单子查询的具有方法
2021/04/27 SQL Server
JS实现刷新网页后之前浏览位置保持不变示例详解
2022/08/14 Javascript