国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開發(fā) > JS > 正文

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

2024-09-06 12:45:43
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
在這篇文章中,作者介紹了7個(gè)JavaScript在IE和Firefox中存在的差異。
1. CSS “float” 值
訪問(wèn)一個(gè)給定CSS 值的最基本句法是:object.style.property,使用駝峰寫法來(lái)替換有連接符的值,例如,訪問(wèn)某個(gè)ID為”header”的<div>的 background-color值,我們使用如下句法:

document.getElementById("header").style.backgroundColor= "#ccc";
但由于”float“這個(gè)詞是一個(gè)JavaScript保留字,因此我們不能用 object.style.float來(lái)訪問(wèn),這里,我們可以在兩種瀏覽器中這么做:
在IE中這樣寫:

document.getElementById("header").style.styleFloat = "left";
在Firefox中這樣寫:

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

2. 元素的推算樣式
JavaScript可以使用object.style.property句法,方便地在外部訪問(wèn)和修改某個(gè)CSS樣式,但其限制是這些句法只能取出已設(shè)的行內(nèi)樣式或者直接由JavaScript設(shè)定的樣式。并不能訪問(wèn)某個(gè)外部的樣式表。為了訪問(wèn)元素的”推算”樣式,我們可以使用下面的代碼:
在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. 訪問(wèn)元素的”class”
像”float“一樣,”class“是JavaScript的一個(gè)保留字,在這兩個(gè)瀏覽器中我們使用如下句法來(lái)訪問(wèn)”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. 訪問(wèn)<label>標(biāo)簽中的”for”
就第3點(diǎn)中所提到的,我們同樣需要使用不現(xiàn)的句法區(qū)分來(lái)訪問(wèn)<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)指針的位置對(duì)你來(lái)說(shuō)可能是非常少見的,不過(guò)當(dāng)你需要的時(shí)候,在IE和Firefox中的句法是不同的。這里所寫出的代碼將是最最基本的,也可能是某個(gè)復(fù)雜事件處理中的某一個(gè)部分。但他們可以解釋其中的異同點(diǎn)。同時(shí),必須指出的是結(jié)果相對(duì)于Firefox,IE會(huì)有更在的不同,這種方法本身就是有BUG的。通常,這種不同可以用”拖動(dòng)位置”來(lái)得到補(bǔ)償,但,那是另外一個(gè)主題的文章了: ) !
在IE中這樣寫:

var myCursorPosition = [0, 0];
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 磴口县| 锡林浩特市| 黑山县| 凯里市| 海南省| 琼海市| 郴州市| 永安市| 柳林县| 铜梁县| 鹤壁市| 长顺县| 鸡西市| 大姚县| 元朗区| 五台县| 长沙市| 淄博市| 珲春市| 沅江市| 洞头县| 宁都县| 集贤县| 新邵县| 新干县| 若尔盖县| 许昌市| 沙湾县| 左权县| 襄樊市| 宣威市| 洱源县| 田东县| 湘潭县| 宁乡县| 九龙城区| 万全县| 雅安市| 余江县| 梓潼县| 邹平县|