成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

IE與Firefox在獲得對象上的區別

開發 前端
本文向大家介紹一下IE與Firefox獲得對象上的區別,其中對象主要包括Form對象、Html對象、DIV對象、Frame以及窗口等內容。

你知道IE與Firefox獲得對象上的區別嗎,這里和大家簡單分享一下,相信本文介紹一定會讓你有所收獲。

IE與Firefox獲得對象上的區別

1.對象問題

1.1Form對象

現有問題:
現有代碼這獲得form對象通過document.forms("formName"),這樣使用在IE能接受,MF不能。
解決方法:
改用作為下標運算。改為document.forms["formName"]
備注
上述的改用作為下標運算中的formName是id而name

1.2HTML對象

現有問題:
在IE中,HTML對象的ID可以作為document的下屬對象變量名直接使用。在MF中不能。
document.all("itemName")或者document.all("itemId")
解決方法:
使用對象ID作為對象變量名
document.getElementById("itemId")
備注
document.all是IE自定義的方法,所以請大家盡量不使用。
還有一種方式,在IE和MF都可以使用
varf=document.forms["formName"];
varo=f.itemId;

1.3DIV對象

現有問題:
在IE中,DIV對象可以使用ID作為對象變量名直接使用。在MF中不能。
DivId.style.display="none"
解決方法:
document.getElementById("DivId").style.display="none"
備注
獲得對象的方法不管是不是DIV對象,都使用getElementById方法。參見1.2

1.4關于frame

現有問題
在IE中可以用window.testFrame取得該frame,mf中不行
解決方法
在frame的使用方面MF和IE的最主要的區別是:
如果在frame標簽中書寫了以下屬性:

那么IE可以通過id或者name訪問這個frame對應的window對象
而mf只可以通過name來訪問這個frame對應的window對象
例如如果上述frame標簽寫在最上層的window里面的htm里面,那么可以這樣訪問
IE:window.top.frameId或者window.top.frameName來訪問這個window對象
MF:只能這樣window.top.frameName來訪問這個window對象
另外,在mf和IE中都可以使用window.top.document.getElementById("frameId")來訪問frame標簽
并且可以通過window.top.document.getElementById("testFrame").src='xx.htm'來切換frame的內容
也都可以通過window.top.frameName.location='xx.htm'來切換frame的內容

1.5窗口

現有問題
IE中可以通過showModalDialog和showModelessDialog打開模態和非模態窗口,但是MF不支持。
解決辦法
直接使用window.open(pageURL,name,parameters)方式打開新窗口。
如果需要傳遞參數,可以使用frame或者iframe。#p#

2.總結

2.1在JS中定義各種對象變量名時,盡量使用id,避免使用name。

在IE中,HTML對象的ID可以作為document的下屬對象變量名直接使用。在MF中不能,所以在平常使用時請盡量使用id,避免只使用name,而不使用id。

2.2變量名與某HTML對象id相同的問題

現有問題
在MF中,因為對象id不作為HTML對象的名稱,所以可以使用與HTML對象id相同的變量名,IE中不能。
解決方法
在聲明變量時,一律加上var,以避免歧義,這樣在IE中亦可正常運行。
此外,***不要取與HTML對象id相同的變量名,以減少錯誤。

1.document.all

Firefox可以兼容document.all,但會生成一條警告。可以用getElementById("*")或者getElementByTagName("*)來代替
不過對于document.all.length等屬性,則完全不兼容。

2.parentElement

這個也不兼容。比方說,obj.parentElement.name則應改成obj.parentNode.attributes.getNamedItem("name").nodeValue(不知道如何寫得更簡潔些)

3.event

W3C不支持windows.event
比方說:
在IE里面
 

  1. .....  
  2. functiononMenuClick()  
  3. {  
  4. collapseMenu(event.srcElement);  
  5. }  

工作正常。不過在Firefox中,則改成:

  1. functiononMenuClick(evt)  
  2. {  
  3. if(evt==null)  
  4. evt=window.event;//ForIE  
  5. varsrcElement=evt.srcElement?evt.srcElement:evt.target;  
  6. //IE使用srcElement,而Firefox使用target  
  7. collapseMenu(srcElement);  
  8. }  
  9.  

 IE和FIREFOX在解析CSS方面的區別

◆對高度的解析

IE:將根據內容的高度變化,包括未定義高度的圖片內容,即使定義了高度,當內容超過高度時,將使用實際高度

Firefox:沒有定義高度時,如果內容中包括了圖片內容,MF的高度解析是根據印刷標準,這樣就會造成和實際內容高度不符合的情況;當定義了高度,但是內容超過高度時,內容會超出定義的高度,但是區域使用的樣式不會變化,造成樣式錯位。

結論:大家在可以確定內容高度的情況下***定義高度,如果真的沒有辦法定義高度,***不用使用邊框樣式,否則樣式肯定會出現混亂!

◆img對象alt和title的解析

alt:當照片不存在或者load錯誤時的提示;

title:照片的tip說明。

在IE中如果沒有定義title,alt也可以作為img的tip使用,但是在MF中,兩者完全按照標準中的定義使用

結論:大家在定義img對象時,***將alt和title對象都寫全,保證在各種瀏覽器中都能正常使用

◆其他的細節差別

當你在寫css的時候,特別是用float:left(或right)排列一竄圖片時,會發現在firefox里面正常而IE里面有問題。無論你用margin:0,還是border:0來約束,都無濟于事。

其實這里還有另外一個問題,就是IE對于空格的處理,firefox是忽略的而IE對于塊與塊之間的空格是處理的。也就是說一個div結束后要緊接著一個div寫,中間不要有回車或者空格。不然也許會有問題,比如3px的偏差,而且這個原因很難發現。

非常不走運的是我又碰到了這樣的問題,多個img標簽連著,然后定義的float:left,希望這些圖片可以連起來。但是結果在firefox里面正常而IE里面顯示的每個img都相隔了3px。我把標簽之間的空格都刪除都沒有作用。

后來的解決方法是在img外面套li,并且對li定義margin:0,這樣就解決了IE和firefox的顯示偏差。IE對于一些模型的解釋會產生很多錯誤問題,只有多多嘗試才能發現原因。這只是一些簡單的區別,在做布局和CSS設計時候可以綜合考慮,但最為有效與簡單的解決兼容問題還是用TABLE表格,表格在兼容性方面有著不錯的表現.

另外在模版的JS設計的時候也需要考慮兩者對代碼的兼容

【編輯推薦】

  1. 十個不被IE6支持的實用CSS屬性
  2. 微軟展示IE9瀏覽器 力推IE8將取代IE6市場
  3. 探究IE和Firefox下的2款HTTP調試工具用法
  4. Firefox和IE瀏覽器清除緩存方法揭秘
  5. 實現IE6、IE7、IE8多版本瀏覽器共存的五種方法
責任編輯:佚名 來源: soidc.net'
相關推薦

2010-08-27 15:56:52

IEFirefoxCSS

2010-08-20 14:47:02

IEFirefoxCSS

2010-08-20 13:34:12

IEFirefoxJavascript

2009-06-09 21:46:18

JavaScript差IEFirefox

2010-08-23 16:09:31

IEfirefoxPadding

2010-08-17 15:21:17

IEFirefoxHTML

2010-08-18 13:23:36

FirefoxHTML

2010-09-16 13:33:47

IE6IE7IE8

2010-10-09 12:43:20

JSfirefox

2010-08-24 10:53:49

CSSpaddingIE

2010-08-19 09:09:53

FirefoxIECSS

2010-08-18 15:41:38

IE6E7Firefox

2010-04-26 10:39:56

IEFirefox安全

2009-05-15 09:03:00

Firefox瀏覽器IE

2009-06-10 21:55:39

打開JavaScripIEFirefox

2010-09-06 15:06:29

IE6IE7Firefox

2010-08-19 13:54:51

FirefoxIECSS

2019-03-04 10:05:05

FirefoxOrgURL

2010-08-16 15:15:12

CSSFireFoxIE

2021-05-25 14:02:45

MozillaFirefoxMacOS
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品中文字幕久久 | 国产精品久久久久免费 | 欧美天堂 | 国产精品综合视频 | 日韩欧美在线观看一区 | 久久青青 | 欧美视频 | 97国产在线视频 | 欧美中文字幕 | 九九精品网 | 久久久久国产精品午夜一区 | 特级生活片 | 91精品国产91久久久久福利 | 久久国产精品免费 | 欧美精品成人一区二区三区四区 | 国产精品一区一区 | h在线免费观看 | 欧美日韩中文字幕 | 可以免费观看的av片 | 久久久久久一区 | 亚洲综合无码一区二区 | 日韩午夜在线观看 | av官网在线 | 伊人最新网址 | 看真人视频一级毛片 | 日韩精品一区二区三区中文字幕 | 国产在线一区二区三区 | 91麻豆产精品久久久久久夏晴子 | 久久51| 亚洲国产精品久久久久婷婷老年 | 精精国产xxxx视频在线野外 | 国产亚洲一区二区精品 | 日韩美女在线看免费观看 | 国产欧美精品一区二区色综合朱莉 | 成人欧美一区二区三区在线播放 | 精品视频在线一区 | 成人av播放| 黄色大片免费播放 | 一级片av | 日日碰碰 | 日韩在线一区二区三区 |