• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            在IE 和 Firefox 中兼容使用js

            1、在定義 頁面元素的時候,如果該頁面元素不需要被腳本調用,那么它就不需要定義其name和id屬性;

             

            2、如果需要定義頁面元素的name,id屬性,那么避免不同元素的name和id相同;

            3、如果沒有特殊需要,盡量讓name和id相同,這主要是為了通用

            4、在腳本中,獲得元素時,盡量用document.getElementById("name / id")   ,能不使用盡量不使用其他的

             

             

            下面是收集的一些IE和Firefox的差異:

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

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

            1.3 DIV對象
            現有問題:
            在 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。

            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 相同的變量名,以減少錯誤。

            posted on 2007-04-03 10:50 PeakGao 閱讀(270) 評論(0)  編輯 收藏 引用 所屬分類: Javascript

            <2007年11月>
            28293031123
            45678910
            11121314151617
            18192021222324
            2526272829301
            2345678

            導航

            統計

            常用鏈接

            留言簿(9)

            隨筆分類(67)

            隨筆檔案(65)

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久久久久国产精品美女| 欧美噜噜久久久XXX| 久久久久综合国产欧美一区二区| 久久一本综合| 久久永久免费人妻精品下载| 国产精品久久久久乳精品爆| 久久夜色精品国产亚洲| 久久精品国产半推半就| 欧美性猛交xxxx免费看久久久| 国产∨亚洲V天堂无码久久久| 久久精品中文字幕第23页| 久久精品国产久精国产思思| 亚洲乱码日产精品a级毛片久久| 99久久中文字幕| 亚洲伊人久久成综合人影院 | 精品精品国产自在久久高清| 久久综合久久综合亚洲| 久久中文字幕一区二区| 久久久久亚洲精品无码蜜桃| 欧美粉嫩小泬久久久久久久 | 久久天天躁狠狠躁夜夜av浪潮 | 精品久久久久久国产| 久久涩综合| 日日狠狠久久偷偷色综合96蜜桃| 国产精品久久一区二区三区| 欧美喷潮久久久XXXXx| 97久久国产综合精品女不卡| 久久无码一区二区三区少妇 | 男女久久久国产一区二区三区 | 亚洲精品午夜国产va久久| 久久99精品久久久久久9蜜桃| 伊人热人久久中文字幕| 欧美伊香蕉久久综合类网站| 久久九九青青国产精品| 1000部精品久久久久久久久| 久久A级毛片免费观看| 久久精品aⅴ无码中文字字幕重口| 无码AV波多野结衣久久| 日产精品久久久久久久性色| AV色综合久久天堂AV色综合在| 成人国内精品久久久久一区|