`
hackbomb
  • 浏览: 212624 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

IE和firefox浏览器在网页编程方面的区别

    博客分类:
  • Web
阅读更多

1.firefox不支持对象加事件的函数名,如:以下代码在IE中能正常显示,但在firefox中则不能;

 
function.window.onload(){   
    alert("onload");   

function.window.onload(){
    alert("onload");
}


改为用:

 
window.onload = fnShow;   
function fnShow(){   
    alert("onload");   

window.onload = fnShow;
function fnShow(){
    alert("onload");
}


或直接写为:

 
window.onload = function (){   
    alert("onload");   
}   
//------- 
window.onload = function (){
    alert("onload");
}
//-------


2.flash,要设置embed的src属性才能正常显示;如:<embed src="../images/easewe.swf";
但在IE中要设置param name="src"的value值才能显示;如:<PARAM NAME="Src" VALUE="./images/easewe.swf"">
--------
所以flash要同时设置这两个属性;

3.制作细线表格:
在IE中可以用bordercolordark="网页背景色",使得表格看起来很细;
但在firefox中不起作用;需给表格增加样式:style="border-collapse:collapse;";
所以要在ie和firefox中都显示细表格,则应该给表格加上样式style="border-collapse:collapse;";

4.在IE中11px和12px显示的大小是一样的,但在firefox中11px会比12px小,导致字在firefox中比ie中小;
所以都需设置12px;

5.集合类对象问题
IE下,可以使用()或[]获取集合类对象;Firefox下,只能使用[]获取集合类对象.
解决方法:统一使用[]获取集合类对象.

6.自定义属性问题
IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性;Firefox下,只能使用getAttribute()获取自定义属性.
解决方法:统一通过getAttribute()获取自定义属性.

7.event.x与event.y问题
IE下,even对象有x,y属性,但是没有pageX,pageY属性;Firefox下,even对象有pageX,pageY属性,但是没有x,y属性.
解决方法:使用mX(mX = event.x ? event.x : event.pageX;)来代替IE下的event.x或者Firefox下的event.pageX.

8.event.srcElement问题
IE下,even对象有srcElement属性,但是没有target属性;Firefox下,even对象有target属性,但是没有srcElement属性.
解决方法:使用obj(obj = event.srcElement ? event.srcElement : event.target;)来代替IE下的event.srcElement或者Firefox下的event.target.

9.window.location.href问题

IE或者Firefox2.0.x下,可以使用window.location或window.location.href;Firefox1.5.x下,只能使用window.location.
解决方法:使用window.location来代替window.location.href.

10.访问frame对象:
IE:使用window.frameId或者window.frameName来访问这个frame对象.
Firefox:只能使用window.frameName来访问这个frame对象.
另外,在IE和Firefox中都可以使用window.document.getElementById("frameId")来访问这个frame对象.

11.window.event问题

window.event只能在IE下运行,而不能在Firefox下运行,这是因为Firefox的event只能在事件发生的现场使用.
解决方法:
IE:

 
<input name="Button8_1" type="button" value="IE" />   
...   
<script language="javascript">   
function gotoSubmit8_1() {   
...   
alert(window.event); //use window.event   
...   
}   
</script> 
<input name="Button8_1" type="button" value="IE" />
...
<script language="javascript">
function gotoSubmit8_1() {
...
alert(window.event); //use window.event
...
}
</script>

IE&Firefox:
<input name="Button8_2" type="button" value="IE" />   
...   
<script language="javascript">   
function gotoSubmit8_2(evt) {   
...   
evt=evt?evt:(window.event?window.event:null);   
alert(evt); //use evt   
...   
}   
</script> 
<input name="Button8_2" type="button" value="IE" />
...
<script language="javascript">
function gotoSubmit8_2(evt) {
...
evt=evt?evt:(window.event?window.event:null);
alert(evt); //use evt
...
}
</script>


下面还有个通用的得到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;   

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;
}

到别的方法去直接调用就好了
function move()   
{   
    var evt=getEvent();   
    ......         
}

分享到:
评论

相关推荐

    javascript 调试工具/教程,支持浏览器IE firefox

    在IE和firefox中调试javascript的教程

    IE网页代码分析插件Debugbar-v7.3.2

    DebugBar是功能强的IE插件 类似于Firefox浏览器的一款开发类插件Firebug 从各个不同的角度剖析Web页面内部的细节层面 给Web开发者带来很大的便利 目前对于个人用户免费 企业用户收费 主要有以下功能: 1 查看...

    浏览器排行 13个真实使用并评价

    Firefox: 浏览器中的老大(不爱算IE,太垃圾如果不是微软强制安装谁会用啊?70%的世界使用率也是很有水分的,占有率其次就是Firefox17%),强大的插件支持,无所不能,只有你想不到的没有他做不到的,编程人员也知道...

    代码高亮工具 -- firefox 附加组件

    在firefox中使用。请直接将文件拖拽至firefox窗口中进行安装。 安装后重启firefox。打开firefox后点击firefox状态栏后下角的highlighting图标,Copy你的代码点击提交,就获得美观的代码了。高亮代码可复制到Blog、...

    精通JavaScript动态网页编程实例版

    1.对于代码35.1.htm,使用Mozilla Firefox浏览器可直接运行,如果使用IE浏览器,需要在服务器端运行。 2.对于代码35.2.html,需要IIS+PHP+MySQL或Apache+PHP+MySQL环境支持 35.1.htm 读取XML文档 35.2....

    在线编辑器的实现原理(兼容IE和FireFox)

     首先需要IE的支持,在IE5.5以后就有一个编辑状态. 就是利用这个编辑状态,然后用javascript来控制在线编辑的。 首先要有一个编辑框,这个编辑框其实就是一个可编辑状态的网页, 我们用iframe来建立编辑框。 &lt;...

    JavaScript入门经典

    全面更新,使JavaScript代码适用于最新版本的IE、Firefox和Safari浏览器。JavaScript允许用户交互浏览精彩纷呈的个性化内容,可以极大地提升网页和Web应用程序的吸引力。精品入门教程《JavaScript入门经典(第4版)》...

    CH_WEB3.0控件开发包V1.1.0_Win32和Win64.rar

    1、内容: 包含demo案例、Web3.0_控件开发包编程指南.pdf和nginx。 Web 控件 V3.0 基于 ActiveX 和 NPAPI 开发,接口封装于 javascript 脚本,以 ...IE8~IE11、Chrome31~Chrome44、Firefox35~Firefox51,64 位浏览器

    植物大战僵尸JavaScript网页版(源码)

    LonelyStar原版的植物大战僵尸JS开源程序,在非作者网站和本地使用绝无广告和插件,兼容各种主流浏览器,IE9-6,Chrome,FireFox,Safari,Opera等。目前进度是23关,下载后无需做任何修改即可上传到网络使用,在本地...

    多种浏览器均支持的音视频应用开发包

    支持Windows平台浏览器上的音频即时通讯应用开发 ...兼容IE、Chrome、Firefox、360、遨游等主流浏览器 支持iOS、Android、PC等设备和Web之间的互联互通 可开发视频会议、视频聊天、在线客服、远程教育等应用

    BRAP:浏览器记录器和播放器 (BRAP) 是一种基于 Java 的工具,它提供了一种编程方式来记录用户在浏览器中的操作(例如点击、击键等),然后重播他们的操作

    想象一下,这个工具不会担心用于记录和播放此类用户活动的浏览器类型(例如 firefox、chrome、IE)。 那不是很有用吗? 浏览器记录器和播放器 (BRAP) 正是这样的工具。 它是一个开源 Java 包,您可以在其中决定对...

    Delphi网络编程框架

    WebXone是一个面向RIA(Rich Internet Applications,富互联网应用)的快速开发平台。是集桌面应用程序的最佳用户界面功能与Web应用程序的普遍采用和...兼容所有主流浏览器,包括IE、Chrome、FireFox、Safari和Opera;

    js实现覆盖层浏览图片及特效(可拖动) js封装成类库

    兼容IE firefox 浏览器,可参考学习事件监听技术,js对象编程

    Java Web Jquery表单验证

    2、软件要求:Chrome浏览器、IE11浏览器、Firefox浏览器 3、网络要求:能访问互联网 1、掌握Jquery框架的使用;掌握Jquery框架的插件开发 2、掌握Jquery-validate表单验证插件的使用,了解表单验证的实现原理 实现一...

    网页圣诞树

    先声明一下,该文件在IE中无法运行,FireFox中运行很慢,特别耗CPU,最佳浏览器为Chorm急速浏览器,建议安装Google的浏览器或者360极速浏览器。 具体代码如下: 使用方法,将一下代码复制到文本文档中,让后将...

    Seleniumpython编程.rar

    支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)...

    Java Spire.Cloud.Word 在Word 文档中添加、删除形状.docx

    支持 IE、Chrome、FireFox、搜狗、遨游、360 等常见浏览器。Spire.Cloud Web API 能帮助开发人员能在任何时间、任何地点直接调用 SDK 接口对 Word、Excel、PPT、PDF 文档进行操作。Spire.Cloud 支持 .NET、Java、PHP...

    冠格企业建站系统 1.4.0(信息港简约版).rar

    冠格企业建站系统是目前国内首款采用Asp.Net2.0+Ajax技术实现的建站系统上百套皮肤供您下载,每周增加皮肤,兼容Firefox、IE等多种主流浏览器,不同于Cms或其他建站系统,我们采用了领先的前台模块和页面无刷新修改...

    冠格企业建站系统 1.4.0(沙滩鞋业现代版).rar

    冠格企业建站系统是目前国内首款采用Asp.Net2.0+Ajax技术实现的建站系统上百套皮肤供您下载,每周增加皮肤,兼容Firefox、IE等多种主流浏览器,不同于Cms或其他建站系统,我们采用了领先的前台模块和页面无刷新修改...

    JavaScript.zip

    JavaScript(通常缩写为JS)是一种高级的、解释型的编程语言。JavaScript是一门基于原型、函数先行的语言,是一门...它被世界上的绝大多数网站所使用,也被世界主流浏览器(Chrome、IE、Firefox、Safari、Opera)支持。

Global site tag (gtag.js) - Google Analytics