Javascript 兼容firefox的一些問題
更新時間:2009年05月21日 19:01:24 作者:
上午在做一些測試.把頁面拿到火狐上去就出現一堆問題.頁面布局先不說.Javascript代碼的問題就夠頭疼
比如:
1. document.all() 在FF里不行. 必須改成document.getElementById();
2. obj.innerText = "XXX"; 在FF里好像偶爾也有問題. 換成obj.innerHTML = "XXX";就行了.
3. var olE = document.body.onload; 獲得body的onload函數. IE沒問題.FF不行.改成window.onload.解決.
至于window.onload和body.onload有什么區(qū)別.. 還有待百度一下.
4. 在IE中.event對象有x,y屬性. FF沒有. event.x在FF里應該是event.pageX
解決辦法. mX = event.x ? event.x : event.pageX; 然后用 mX 代替 event.x.
5. 最可恨的是Ajax在FF里不能同步調用?。?!
比如 xmlHttp.open("get","xxx.aspx?id=xx",true); //true表示異步
在IE和FF里都沒問題。 但是 xmlHttp.open("get","xxx.aspx?id=xx",false); 在IE沒問題.在FF里就不行!!
這個問題還沒找到解決辦法.
6. 要吃飯了.未完待續(xù)..
-----------
第5個解決了.
同步調用的時候這樣寫.
xmlHttp.open("get","xxx.aspx?id=xx",false);
xmlhttp.send(null);
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
// alert(xmlhttp.responseText);
} else {
alert("您所請求的頁面有異常。");
}
}
1. document.all() 在FF里不行. 必須改成document.getElementById();
2. obj.innerText = "XXX"; 在FF里好像偶爾也有問題. 換成obj.innerHTML = "XXX";就行了.
3. var olE = document.body.onload; 獲得body的onload函數. IE沒問題.FF不行.改成window.onload.解決.
至于window.onload和body.onload有什么區(qū)別.. 還有待百度一下.
4. 在IE中.event對象有x,y屬性. FF沒有. event.x在FF里應該是event.pageX
解決辦法. mX = event.x ? event.x : event.pageX; 然后用 mX 代替 event.x.
5. 最可恨的是Ajax在FF里不能同步調用?。?!
比如 xmlHttp.open("get","xxx.aspx?id=xx",true); //true表示異步
在IE和FF里都沒問題。 但是 xmlHttp.open("get","xxx.aspx?id=xx",false); 在IE沒問題.在FF里就不行!!
這個問題還沒找到解決辦法.
6. 要吃飯了.未完待續(xù)..
-----------
第5個解決了.
同步調用的時候這樣寫.
復制代碼 代碼如下:
xmlHttp.open("get","xxx.aspx?id=xx",false);
xmlhttp.send(null);
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
// alert(xmlhttp.responseText);
} else {
alert("您所請求的頁面有異常。");
}
}
相關文章
關于javascript event flow 的一個bug詳解
描述了firefox,safari 有一個bug和DOM 3 規(guī)范不一致:在event.currentTarget等于event.target的時候(即event flow處于target phase時),會調用添加到currentTarget上的useCapture為true的listener2013-09-09javascript 動態(tài)創(chuàng)建表格
這篇文章主要介紹了javascript 動態(tài)創(chuàng)建表格,需要的朋友可以參考下2015-01-01