FF和IE之間7個JavaScript的差異第2/2頁
更新時間:2009年05月10日 14:58:27 作者:
盡管 JavaScript 歷史上使用冗長而令人生厭的代碼塊來標(biāo)的特定瀏覽器的時期已經(jīng)結(jié)束了,但是偶爾使用一些簡單的代碼塊和對象檢測來確保一些代碼在用戶機(jī)器上正常工作依然是必要的。
5. 獲取光標(biāo)位置
獲取元素的光標(biāo)位置比較少見,如果需要這么做,IE 和 Firefox 的語法也是不同的。這個示例代碼是相當(dāng)基礎(chǔ)的,一般用作許多復(fù)雜事件處理的一部分,這里僅用來描述差異。需要注意的是,IE 中的結(jié)果和 Firefox 中是不同的,因此這個方法有些問題。通常,這個差異可以通過獲取 “滾動位置” 來補(bǔ)償 - 但那是另外一篇文章的課題了。
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. 獲取視窗或?yàn)g覽器窗口的尺寸
有時需要找出瀏覽器的有效窗口空間的尺寸,一般成為”視窗”。
IE 語法:
復(fù)制代碼 代碼如下:
var myBrowserSize = [0, 0];
myBrowserSize[0] = document.documentElement.clientWidth;
myBrowserSize[1] = document.documentElement.clientHeight;
Firefox 語法:
復(fù)制代碼 代碼如下:
var myBrowserSize = [0, 0];
myBrowserSize[0] = window.innerWidth;
myBrowserSize[1] = window.innerHeight;
7. Alpha 透明
嗯,這其實(shí)不是 JavaScript 的語法項(xiàng)目 - alpha 透明是通過 CSS 來設(shè)置的。但是當(dāng)對象通過 JavaScript 設(shè)置為淡入淡出時,這就需要通過獲取 CSS 的 alpha 設(shè)定來實(shí)現(xiàn),一般是在循環(huán)內(nèi)部。要通過以下javaScript 來改變 CSS 代碼:
IE 語法:
復(fù)制代碼 代碼如下:
#myElement {
filter: alpha(opacity=50);
}
Firefox 語法:
復(fù)制代碼 代碼如下:
#myElement {
opacity: 0.5;
}
要使用 JavaScript 獲取這些值,需要使用 style 對象:
IE 語法:
復(fù)制代碼 代碼如下:
var myObject = document.getElementById("myElement");
myObject.style.filter = "alpha(opacity=80)";
Firefox 語法:
復(fù)制代碼 代碼如下:
var myObject = document.getElementById("myElement");
myObject.style.opacity = "0.5";
當(dāng)然,已經(jīng)說到了,一般是在循環(huán)中間來改變 opcity/alpha,來創(chuàng)建動畫效果,但這這是個簡單的例子,只是為了明白地描述方法是如何實(shí)現(xiàn)地。
原文:http://www.impressivewebs.com/7-javascript-differences-between-firefox-ie
譯文:http://www.qianduan.net/between-firefox-and-ie-differences-7-javascript.html
相關(guān)文章
跟我學(xué)習(xí)javascript的異步腳本加載
跟我學(xué)習(xí)javascript的異步腳本加載,告訴大家如何使自己的站點(diǎn)更快捷,以及最簡單的方法 利用什么樣的工具達(dá)到預(yù)期效果,想一探究竟的朋友可以參考一下這篇文章。2015-11-11
JavaScript獲取GridView選擇的行內(nèi)容
一般GridView第一列是多選框CheckBox,負(fù)責(zé)標(biāo)記當(dāng)前行是否被選中,后面可以有文本框TextBox,下拉框DropDownList,標(biāo)簽Lable2009-04-04
javascript工廠模式和構(gòu)造函數(shù)模式創(chuàng)建對象方法解析
本文主要對javascript工廠模式和構(gòu)造函數(shù)模式創(chuàng)建對象方法進(jìn)行解析,具有一定的參考價值,下面跟著小編一起來看下吧2016-12-12
JavaScript 冒泡排序和選擇排序的實(shí)現(xiàn)代碼
本文通過實(shí)例代碼給大家介紹了js冒泡排序和選擇排序的實(shí)現(xiàn)代碼,代碼簡單易懂,非常不錯,具有參考借鑒價值,感興趣的朋友一起學(xué)習(xí)吧2016-09-09
bootstrapTable+ajax加載數(shù)據(jù) refresh更新數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了bootstrapTable+ajax加載數(shù)據(jù),以及refresh更新數(shù)據(jù),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08
微信小程序基于slider組件動態(tài)修改標(biāo)簽透明度的方法示例
這篇文章主要介紹了微信小程序基于slider組件動態(tài)修改標(biāo)簽透明度的方法,可通過slider組件拖動實(shí)現(xiàn)圖片透明度的改變功能,涉及微信小程序事件綁定、base64格式圖片載入及slider組件使用技巧,需要的朋友可以參考下2017-12-12
JavaScript+HTML5實(shí)現(xiàn)的日期比較功能示例
這篇文章主要介紹了JavaScript+HTML5實(shí)現(xiàn)的日期比較功能,涉及javascript結(jié)合HTML5針對日期的轉(zhuǎn)換與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-07-07

