IE與Firefox在JavaScript上的不同寫法小結(jié)

    時(shí)間:2024-07-22 08:25:06 JavaScript 我要投稿
    • 相關(guān)推薦

    IE與Firefox在JavaScript上的不同寫法小結(jié)

      在這篇文章中,作者介紹了7個(gè)在IE和Firefox中不同的JavaScript句法。

      1. CSS "float" 值

      訪問一個(gè)給定CSS 值的最基本句法是:

      object.style.property

      ,使用駝峰寫法來替換有連接符的值,例如,訪問某個(gè)ID為"header"的

    的background-color

      值,我們使用如下句法:

      document.getElementById("header").style.backgroundColor= "#ccc";

      但由于"float"這個(gè)詞是一個(gè)JavaScript保留字,因此我們不能用

      object.style.float

      來訪問,這里,我們可以在兩種瀏覽器中這么做:

      在IE中這樣寫:

      document.getElementById("header").style.styleFloat = "left";

      在Firefox中這樣寫:

      document.getElementById("header").style.cssFloat = "left";

      2. 元素的推算樣式

      JavaScript可以使用

      object.style.property

      句法,方便地在外部訪問和修改某個(gè)CSS樣式,但其限制是這些句法只能取出已設(shè)的行內(nèi)樣式或者直接由JavaScript設(shè)定的樣式。并不能訪問某個(gè)外部的樣式表。為了訪問元素的"推算"樣式,我們可以使用下面的代碼:

      在IE中這樣寫:

      var myObject = document.getElementById("header");

      var myStyle = myObject.currentStyle.backgroundColor;

      在Firefox中這樣寫:

      var myObject = document.getElementById("header");

      var myComputedStyle = document.defaultView.getComputedStyle(myObject, null);

      var myStyle = myComputedStyle.backgroundColor;

      3. 訪問元素的"class"

      像"float"一樣,"class"是JavaScript的一個(gè)保留字,在這兩個(gè)瀏覽器中我們使用如下句法來訪問"class"。

      在IE中這樣寫:

      var myObject = document.getElementById("header");

      var myAttribute = myObject.getAttribute("className");

      在Firefox中這樣寫:

      var myObject = document.getElementById("header");

      var myAttribute = myObject.getAttribute("class");

      This syntax would also apply using the

      setAttribute

      method.

      4. 訪問

      就第3點(diǎn)中所提到的,我們同樣需要使用不現(xiàn)的句法區(qū)分來訪問

      在IE中這樣寫:

      var myObject = document.getElementById("myLabel");

      var myAttribute = myObject.getAttribute("htmlFor");

      在Firefox中這樣寫:

      var = document.getElementById("myLabel");

      var myAttribute = myObject.getAttribute("for");

      5. 獲取鼠標(biāo)指針的位置

      計(jì)算出鼠標(biāo)指針的位置對(duì)你來說可能是非常少見的,不過當(dāng)你需要的時(shí)候,在IE和Firefox中的句法是不同的。這里所寫出的代碼將是最最基本的,也可能是某個(gè)復(fù)雜事件處理中的某一個(gè)部分。但他們可以解釋其中的異同點(diǎn)。同時(shí),必須指出的是結(jié)果相對(duì)于Firefox,IE會(huì)有更在的不同,這種方法本身就是有BUG的。通常,這種不同可以用"拖動(dòng)位置"來得到補(bǔ)償,但,那是另外一個(gè)主題的文章了: ) !

      在IE中這樣寫:

      復(fù)制代碼 代碼如下:

      var myCursorPosition = [0, 0];

      myCursorPosition[0] = event.clientX;

      myCursorPosition[1] = event.clientY;

      在Firefox中這樣寫:

      復(fù)制代碼 代碼如下:

      var myCursorPosition = [0, 0];

      myCursorPosition[0] = event.pageX;

      myCursorPosition[1] = event.pageY;

      6. 獲取可見區(qū)域、窗口的大小

      有時(shí),我們會(huì)需要找到瀏覽器的可視位置的大小,通常我們稱之為"可見區(qū)域"。

      在IE中這樣寫:

      var myBrowserSize = [0, 0];

      myBrowserSize[0] = document.documentElement.clientWidth;

      myBrowserSize[1] = document.documentElement.clientHeight;

      在Firefox中這樣寫:

      var myBrowserSize = [0, 0];

      myBrowserSize[0] = window.innerWidth;

      myBrowserSize[1] = window.innerHeight;

      7. Alpha 透明

      好吧,這并不是一個(gè)JavaScript句法問題,而是源自于CSS的Alpha透明。但當(dāng)某個(gè)物體需要淡入/出則需要JavaScript來表現(xiàn),這是通過訪問CSS的Alpha透明設(shè)置來完成的,通常在一個(gè)循環(huán)中完成。你需要通過來修改的JavaScript的代碼如下::

      在IE中這樣寫:

      #myElement { filter: alpha(opacity=50); }

      在Firefox中這樣寫:

      #myElement { opacity: 0.5; }

      在IE中這樣寫:

      var myObject = document.getElementById("myElement");

      myObject.style.filter = "alpha(opacity=80)";

      在Firefox中這樣寫:

      var myObject = document.getElementById("myElement"); myObject.style.opacity = "0.5";

      還有什么不同的嗎?

      這是作者(via: 7 JavaScript Differences Between Firefox & IE)個(gè)人根據(jù)自己的經(jīng)驗(yàn)整理的,而sofish在JavaScript上依然是一個(gè)新手。如果還有更多的不同,歡迎大家提出來,分享出來,共同學(xué)習(xí)!

    【IE與Firefox在JavaScript上的不同寫法小結(jié)】相關(guān)文章:

    Javascript 閉包引起IE內(nèi)存泄露分析04-01

    對(duì)javascript的理解03-29

    JavaScript的課堂講解03-31

    JavaScript 基礎(chǔ)教學(xué)04-01

    JavaScript學(xué)習(xí)筆記03-30

    常用的JavaScript模式03-10

    Javascript的this用法簡(jiǎn)述03-25

    JavaScript常用方法匯總03-08

    高效編寫JavaScript代碼的技巧03-10

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      视频一区二区欧美 | 亚洲国产美日韩欧美特级 | 日韩精品中文字幕一区 | 亚洲精品911永久在线观看 | 在线鲁鲁视频免费观看 | 最新精品国产AV资源网 |