IE与FireFox的兼容性问题分析


Posted in Javascript onApril 22, 2007

window.event

IE:有window.event对象 
FF:没有window.event对象。可以通过给函数的参数传递event对象。如onmousemove=doMouseMove(event) 
鼠标当前坐标

IE:event.x和event.y。 
FF:event.pageX和event.pageY。 
通用:两者都有event.clientX和event.clientY属性。 
鼠标当前坐标(加上滚动条滚过的距离)

IE:event.offsetX和event.offsetY。 
FF:event.layerX和event.layerY。 
标签的x和y的坐标位置:style.posLeft 和 style.posTop

IE:有。 
FF:没有。 
通用:object.offsetLeft 和 object.offsetTop。 
窗体的高度和宽度

IE:document.body.offsetWidth和document.body.offsetHeight。注意:此时页面一定要有body标签。 
FF:window.innerWidth和window.innerHegiht,以及document.documentElement.clientWidth和document.documentElement.clientHeight。 
通用:document.body.clientWidth和document.body.clientHeight。 
添加事件

IE:element.attachEvent("onclick", func);。 
FF:element.addEventListener("click", func, true)。 
通用:element.onclick=func。虽然都可以使用onclick事件,但是onclick和上面两种方法的效果是不一样的,onclick只有执行一个过程,而attachEvent和addEventListener执行的是一个过程列表,也就是多个过程。例如:element.attachEvent("onclick", func1);element.attachEvent("onclick", func2)这样func1和func2都会被执行。 
标签的自定义属性

IE:如果给标签div1定义了一个属性value,可以div1.value和div1["value"]取得该值。 
FF:不能用div1.value和div1["value"]取。 
通用:div1.getAttribute("value")。 
父节点、子节点和删除节点

IE:parentElement、parement.children,element.romoveNode(true)。 
FF:parentNode、parentNode.childNodes,node.parentNode.removeChild(node)。 
画图

IE:VML。 
FF:SVG。 
CSS:透明

IE:filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)。 
FF:opacity:0.6。 
CSS:圆角

IE:不支持圆角。 
FF:-moz-border-radius:4px,或者-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-bottomright:4px;。 
CSS:双线凹凸边框

IE:border:2px outset;。 
FF:-moz-border-top-colors: #d4d0c8 white;-moz-border-left-colors: #d4d0c8 white;-moz-border-right-colors:#404040 #808080;-moz-border-bottom-colors:#404040 #808080;。

Javascript 相关文章推荐
运用jquery实现table单双行不同显示并能单行选中
Jul 25 Javascript
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
Nov 11 Javascript
jquery select动态加载选择(兼容各种浏览器)
Feb 01 Javascript
jQuery的:parent选择器定义和用法
Jul 01 Javascript
JS数组去掉重复数据只保留一条的实现代码
Aug 11 Javascript
滚动条的监听与内容随着滚动条动态加载的实现
Feb 08 Javascript
ExtJs的Ext.Ajax.request实现waitMsg等待提示效果
Jun 14 Javascript
解决vue.js在编写过程中出现空格不规范报错的问题
Sep 20 Javascript
AngularJS遍历获取数组元素的方法示例
Nov 11 Javascript
element-ui表格数据转换的示例代码
Aug 24 Javascript
微信小程序如何访问公众号文章
Jul 08 Javascript
Vue 电商后台管理项目阶段性总结(推荐)
Aug 22 Javascript
javascript生成/解析dom的CDATA类型的字段的代码
Apr 22 #Javascript
XML+XSL 与 HTML 两种方案的结合
Apr 22 #Javascript
用javascript实现的图片马赛克后显示并切换加文字功能
Apr 21 #Javascript
JS Timing
Apr 21 #Javascript
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
Apr 21 #Javascript
JS 建立对象的方法
Apr 21 #Javascript
如何做到打开一个页面,过几分钟自动转到另一页面
Apr 20 #Javascript
You might like
openflashchart 2.0 简单案例php版
2012/05/21 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
2013/06/17 PHP
初识通用数据库操作类――前端easyui-datagrid,form(php)
2015/07/31 PHP
php 魔术常量详解及实例代码
2016/12/04 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
2017/11/20 PHP
PHP中isset、empty的用法与区别示例详解
2020/11/05 PHP
CSS中一些@规则的用法小结
2021/03/09 HTML / CSS
JS跨域代码片段
2012/08/30 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
js制作简易年历完整实例
2015/01/28 Javascript
jQuery操作表单常用控件方法小结
2015/03/23 Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
2015/04/12 Javascript
js跨域请求的5中解决方式
2015/07/02 Javascript
移动端JQ插件hammer使用详解
2015/07/03 Javascript
轻松学习jQuery插件EasyUI EasyUI创建树形菜单
2015/11/30 Javascript
zTree插件下拉树使用入门教程
2016/04/11 Javascript
NodeJs——入门必看攻略
2016/06/27 NodeJs
js Canvas绘制圆形时钟教程
2017/02/06 Javascript
Angular实现购物车计算示例代码
2017/02/21 Javascript
js鼠标跟随运动效果
2017/03/11 Javascript
jquery仿微信聊天界面
2017/05/06 jQuery
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
python操作MySQL数据库具体方法
2013/10/28 Python
python追加元素到列表的方法
2015/07/28 Python
轻松实现python搭建微信公众平台
2016/02/16 Python
在win和Linux系统中python命令行运行的不同
2016/07/03 Python
python实现简单加密解密机制
2019/03/19 Python
python虚拟环境完美部署教程
2019/08/06 Python
如何通过python实现IOU计算代码实例
2020/11/02 Python
利用Python如何画一颗心、小人发射爱心
2021/02/21 Python
《口技》教学反思
2014/02/21 职场文书
房地产促销活动方案
2014/03/01 职场文书
小学安全教育月活动总结
2014/07/07 职场文书
教师业务学习材料
2014/12/16 职场文书
2016新年晚会开场白
2015/12/03 职场文书