ie和firefox不兼容的解決方法集合
更新時(shí)間:2009年04月28日 19:30:06 作者:
網(wǎng)頁(yè)設(shè)計(jì)很多情況下,需要注意ie跟firefox的不同區(qū)別,腳本之家提供了不好這樣的文章,大家可以好好看下。
1、firefox和ie事件event處理
在ie中,事件對(duì)象是作為一個(gè)全局變量來(lái)保存和維護(hù)的。 所有的瀏覽器事件,不管是用戶(hù)觸發(fā)
的,還是其他事件, 都會(huì)更新window.event 對(duì)象。 所以在代碼中,只要輕松調(diào)用 window.event
就可以輕松獲取 事件對(duì)象, 再 event.srcElement 就可以取得觸發(fā)事件的元素進(jìn)行進(jìn)一步處理
在ff中, 事件對(duì)象卻不是全局對(duì)象,一般情況下,是現(xiàn)場(chǎng)發(fā)生,現(xiàn)場(chǎng)使用,ff把事件對(duì)象自動(dòng)傳
遞給對(duì)應(yīng)的事件處理函數(shù)。 在代碼中,函數(shù)的第一個(gè)參數(shù)就是ff下的事件對(duì)象了。
<button id="btn4" onclick="foo4()">按鈕4</button>
<script>
function foo4(){
var evt=getEvent();
var element=evt.srcElement || evt.target ;
alert(element.id)
}
function getEvent()
{ //同時(shí)兼容ie和ff的寫(xiě)法
if(document.all) return window.event;
func=getEvent.caller;
while(func!=null){
var arg0=func.arguments[0];
if(arg0){
if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){
return arg0;
}
}
func=func.caller;
}
return null;
}
</script>
2、firefox和ie對(duì)手型指針cursor不兼容
手型指針有cursor:hand和cursor:pointer兩種寫(xiě)法,其中cursor:hand在ff中不支持,返回錯(cuò)誤!
只要使用cursor:pointer即可,ff和ie都支持!
在ie中,事件對(duì)象是作為一個(gè)全局變量來(lái)保存和維護(hù)的。 所有的瀏覽器事件,不管是用戶(hù)觸發(fā)
的,還是其他事件, 都會(huì)更新window.event 對(duì)象。 所以在代碼中,只要輕松調(diào)用 window.event
就可以輕松獲取 事件對(duì)象, 再 event.srcElement 就可以取得觸發(fā)事件的元素進(jìn)行進(jìn)一步處理
在ff中, 事件對(duì)象卻不是全局對(duì)象,一般情況下,是現(xiàn)場(chǎng)發(fā)生,現(xiàn)場(chǎng)使用,ff把事件對(duì)象自動(dòng)傳
遞給對(duì)應(yīng)的事件處理函數(shù)。 在代碼中,函數(shù)的第一個(gè)參數(shù)就是ff下的事件對(duì)象了。
<button id="btn4" onclick="foo4()">按鈕4</button>
<script>
function foo4(){
var evt=getEvent();
var element=evt.srcElement || evt.target ;
alert(element.id)
}
function getEvent()
{ //同時(shí)兼容ie和ff的寫(xiě)法
if(document.all) return window.event;
func=getEvent.caller;
while(func!=null){
var arg0=func.arguments[0];
if(arg0){
if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){
return arg0;
}
}
func=func.caller;
}
return null;
}
</script>
2、firefox和ie對(duì)手型指針cursor不兼容
手型指針有cursor:hand和cursor:pointer兩種寫(xiě)法,其中cursor:hand在ff中不支持,返回錯(cuò)誤!
只要使用cursor:pointer即可,ff和ie都支持!
相關(guān)文章
Javascript讓DEDECMS告別手寫(xiě)Tag
dedecms在編輯修改內(nèi)容時(shí),TAG標(biāo)簽需要手動(dòng)輸,中文的Tag, 中間還得用半角字符','分隔, 輸入法切來(lái)切去很不方便, 于是動(dòng)手改后臺(tái)代碼, 利用后臺(tái)的tags_main.php, 讓dedecms添加內(nèi)容時(shí)能去tags_main里去選擇.2014-09-09JavaScript canvas復(fù)刻蘋(píng)果發(fā)布會(huì)環(huán)形進(jìn)度條
canvas 真是一個(gè)好東西,它給前端插上了想象的翅膀,伴隨著 h5 而來(lái),將 web 代入了新的領(lǐng)域。本文將利用anvas復(fù)刻蘋(píng)果發(fā)布會(huì)環(huán)形進(jìn)度條,感興趣的可以嘗試一下2022-07-07JavaScript數(shù)據(jù)類(lèi)型檢測(cè)實(shí)現(xiàn)方法詳解
Javascript中檢查數(shù)據(jù)類(lèi)型一直是老生常談的問(wèn)題,類(lèi)型判斷在web開(kāi)發(fā)中也有著非常廣泛的應(yīng)用,所以下面這篇文章主要給大家介紹了關(guān)于JS數(shù)據(jù)類(lèi)型檢測(cè)的那些事,需要的朋友可以參考下2022-11-11js/jquery遍歷對(duì)象和數(shù)組的方法分析【forEach,map與each方法】
這篇文章主要介紹了js/jquery遍歷對(duì)象和數(shù)組的方法,結(jié)合實(shí)例形式分析了數(shù)組遍歷的forEach,map與each方法常見(jiàn)使用技巧,需要的朋友可以參考下2019-02-02Javascript公共腳本庫(kù)系列(一): 彈出層腳本
本篇文章講解彈出浮動(dòng)層的javascript函數(shù), 以及函數(shù)的原理和使用注意事項(xiàng).2011-02-02javascript動(dòng)態(tài)添加單元格的腳本代碼
javascript動(dòng)態(tài)添加單元格的腳本代碼...2007-11-11微信小程序調(diào)用天氣接口并且渲染在頁(yè)面過(guò)程詳解
這篇文章主要介紹了微信小程序調(diào)用天氣接口并且渲染在頁(yè)面過(guò)程詳解,今天寫(xiě)一個(gè)具體的例子,調(diào)用一個(gè)免費(fèi)的天氣接口的api,并且把所獲取的內(nèi)容展示在前端的界面,前端界面與 iView Weapp結(jié)合,需要的朋友可以參考下2019-06-06