动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   网页设计 → 阅读文章

 IE与Mozilla下Dhtml的一些区别小结

作者来源: 
阅读 数 657 人次 , 2006-3-16 15:38:00 

1.DOM上的接口基本上还是一致的,但经测试发现mozilla下的DOM更标准些,就算些法一样,IE下会有一些微小的区别,但无关要紧

2.事件模型上,这方面区别算比较大.
mozilla下的e.target 相当于 ie下的event.srcElement,但细节上有区别,后者是返回一个html element
而e.target返回的是个节点,也就是说包括文本节点,方法可以这样
var trg = e.target;
while(trg.nodeType!=1)trg=trg.parentNode;

mozilla下的e.which与ie下的event.keyCode相当

相对应的还有e.layerX,e.layerY,e.pageX,e.pageY...
可以看看http://fason.nease.net/mozilla/dom/     event部份

事件绑定上mozilla用addEventListener,removeEventListener,对应ie的attachEvent,detatchEvent

3.对象引用上就直接document.getElementById就行了,如果还要兼容ie4,可以再加上document.all判断
form element的引用要标准些var oInput = document.formName.elements["input1"]

4.XML的应用上区别更大些,因为IE下是通过activex来创建,而mozilla已经是有这些对象的(需要dom2支持)
Xmldomdocument:   var doc = document.inplementation.createDocument("","",null)
xmlhttp:         var req = new XMLHttpRequest()

5.innerText就在mozilla不支持了,需要用些range的技巧来取得它的text

6.insertAdjacentHTML是个比较好用的方法,mozilla可以用DOM的方法insertBefore来兼容

7.更细微的,如Array,Date的一些方法ie和mozilla也会有一些微小的区别,具体不提到了。。。

写了两个例子:
1. 对于通过ID取对象

function getObjectById(id)
{
  if (typeof(id) != "string" || id == "") return null;
  if (document.all) return document.all(id);
  if (document.getElementById) return document.getElementById(id);
  try {return eval(id);} catch(e){ return null;}
}
  
 本文TagsHTML/CSS  firefox  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:与HTML相比XHTML有什么特点?
· 下一篇:Dreamweaver网页设计制作技巧
· Dreamweaver MX进阶教程(二)滚动字幕
· 精通 CSS 滤镜(四)
· 如何简化过于拥挤的新闻网站首页的混乱?
· CSS超级技巧大放送(6)
· 利用FrontPage 2003轻松制作网络申请系统(2)


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077