天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

JavaScript在IE和Firefox瀏覽器下的7個(gè)差異兼容寫法小結(jié)

在這篇文章中,作者介紹了7個(gè)JavaScript在IE和Firefox中存在的差異。
1. CSS “float” 值
訪問一個(gè)給定CSS 值的最基本句法是:object.style.property,使用駝峰寫法來替換有連接符的值,例如,訪問某個(gè)ID為”header”的<div>的 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. 訪問<label>標(biāo)簽中的”for”
就第3點(diǎn)中所提到的,我們同樣需要使用不現(xiàn)的句法區(qū)分來訪問<label>標(biāo)簽中的”for“:
在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)指針的位置對你來說可能是非常少見的,不過當(dāng)你需要的時(shí)候,在IE和Firefox中的句法是不同的。這里所寫出的代碼將是最最基本的,也可能是某個(gè)復(fù)雜事件處理中的某一個(gè)部分。但他們可以解釋其中的異同點(diǎn)。同時(shí),必須指出的是結(jié)果相對于Firefox,IE會(huì)有更在的不同,這種方法本身就是有BUG的。通常,這種不同可以用”拖動(dòng)位置”來得到補(bǔ)償,但,那是另外一個(gè)主題的文章了: ) !
在IE中這樣寫:

var myCursorPosition = [0, 0];
myCursorPosition[0] = event.clientX;
myCursorPosition[1] = event.clientY;
在Firefox中這樣寫:

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í)!

JavaScript技術(shù)JavaScript在IE和Firefox瀏覽器下的7個(gè)差異兼容寫法小結(jié),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产精品亚洲高清一区二区 | 亚洲精品天堂无码中文字幕影院 | 亚洲 欧美 国产 在线 日韩 | 火影忍者高清无码黄漫 | 亚洲中文热码在线视频 | 亚洲无线码一区在线观看 | 国产精品成人免费 | 最新国产成人综合在线观看 | 久久99热这里只有精品66 | 老师的玉足高跟鞋满足我 | 色聚网久久综合 | 一二三四韩国免费观看 | 成人a视频片在线观看免费 成人a毛片久久免费播放 | 久久永久影院免费 | 精品福利一区 | 成年人在线免费观看视频网站 | 国产日韩亚洲精品视频 | 日韩熟女精品一区二区三区 | 国产A级毛片久久久久久久 国产a级黄色毛片 | 精品国产90后在线观看 | 啦啦啦 中文 中国 免费 高清在线 | 国内久久久久影院精品 | 18美女腿打开无遮软件 | 国产99视频精品免费播放 | 內射XXX韩国在线观看 | 国产香蕉九九久久精品免费 | 亚洲娇小性色xxxx | 天天久久狠狠色综合 | 午夜不卡久久精品无码免费 | 风流少妇BBWBBW69视频 | 美女伊人网 | 亚洲高清国产拍精品影院 | 伊人狼人久久精品热9 | 国产成人拍精品免费视频爱情岛 | 嫩草影院久久精品 | 久久亚洲精品2017 | 日本一区精品久久久久影院 | 欧美高清video mr.sexo | 日本一区精品久久久久影院 | 无码日韩人妻精品久久蜜桃免费 | 国产欧美在线亚洲一区刘亦菲 |