当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 网页和浏览器兼容性问题汇总(draft1)

Javascript
推荐:极酷右键菜单
跟随鼠标旋转的文字
拖动层效果,兼容IE和FF!
由 element.appendChild(newNode) ,谈开去
发个自己写的表格操作类(添加,删除,排序,上移,下移)
小议Function.apply() 之一------(函数的劫持与对象的复制)
小议Function.apply()之二------利用Apply的参数数组化来提高 JavaScript程序性能
JavaScript中令你抓狂的魔术变量
[原创]网络复制内容时常用的正则+editplus
createElement和onclick
很有趣的一段textarea
用 JavaScript 给站外链接的 cursor 进行改造
一段好玩的JavaScript代码
IE中实现全屏广告代码,霸道无比.
phpwind放自动注册方法
线路分流自动跳转代码;希望对大家有用!
鼠标放在放在输入框上面提示效果
常用js脚本
硬盘浏览程序,保存成网页格式便可使用
Js的MessageBox

Javascript 中的 网页和浏览器兼容性问题汇总(draft1)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 102 ::
收藏到网摘: n/a

由于IE扩展了许多私有的DOM、CSS等导致许多网页的开发者都根据IE开发,才导致许多网页的不规范,从而导致现在的浏览器浏览相同网页效果不尽相同。 一.Javascript
1.日期对象的getYear方法
IE getYear()返回的结果和getFullYear()结果是相同的,但是ECMA262明确规定了getYear返回的是“年份-1970”。而有些网站采用getYear返回年份,导致IE浏览器和FF等比较规范的浏览器出现逻辑上的不同。
二.DOM
1.事件模型
2.document.elementFromPoint
document的该方法是IE扩展的,可以根据视口的客户区坐标返回元素的DOM节点。safari也支持该方法,但是坐标表示的是网页内容布局后的坐标(该坐标是浏览器窗口的客户区坐标)。两者的区别导致了如果想通过鼠标的指针的位置获取元素节点,IE是可以直接事件的客户的客户区坐标(clientX,clientY)返回元素,但是safari需要用scrollX和scrollY来返回。从该接口的意义上说两者都是合理的。MSDN里面也没有明确定义该坐标的意义,但是从接口的使用上说IE更加简单,而safari却需要转换坐标。
三.CSS
四.layout
五.插件与ActiveX
众所周知,IE兼容第三方程序采用的是ActiveX技术;而Firefox,safari,Chrome,opera采用的是NPAPI的插件技术。两者在接口层次上而言插件接口层次更低(都是C函数指针),采用抽象的接口和数据类型封装浏览器和第三方程序的交互逻辑,但是浏览器和插件程序是紧耦合的;而ActiveX屏蔽了进程和线程模型,是一种较松耦合的交互方式。这也是为什么合法 的ActiveX在IE中不会使得IE崩溃,但是同功能的插件有可能使得浏览器崩溃。在这个特性的区别是也是浏览器兼容性方面较大区别之一。
六.其他
1.论坛根据UserAgent中浏览器的子版本设置Cookie,这不太合理,因为UserAgent会随着浏览器版本变化,而导致原来的Cookie实效。