|
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
IE7.0、Firefox2.0、Opera9.0測(cè)試通過
歡迎大家指教批評(píng)
前段時(shí)間一直在研究Js,網(wǎng)上有很多關(guān)于兼容瀏覽器方面的文章,給大家找了幾個(gè):
http://blog.csdn.NET/zqian1987/archive/2008/03/02/2140055.ASPx
http://www.cnblogs.com/jacklong/archive/2008/01/10/1033954.html
下面寫寫我這段時(shí)間的一些心得,主要介紹兼容IE和FireFox方面,Opera9.0前的版本好像N多東西不支持,暫時(shí)不介紹,Opera9.0以后的版本在Javascript解釋方面和FireFox比較接近。
我介紹的都是一些細(xì)節(jié)方面的東西,側(cè)重于寫一些不常見的情況,想到新的我會(huì)持續(xù)補(bǔ)充:
1、創(chuàng)建一個(gè)Element,通用的寫法為createElement("div")
IE中也可以這樣寫createElement("<div style='color:#FFFFFF'>"),但Firefox不認(rèn)
2、IE中的width、height與Firefox中概念不同,IE中width=FireFox中的width+2*borderWidth+2*Padding
參見:http://help.powereasy.NET/Template/WEB/1557.html
3、動(dòng)態(tài)添加css代碼
cssStr = "p { color:#FF0000;} a { font-size:9pt;}";
var style = win.document.createStyleSheet();
style.cssText = cssStr;FireFox:復(fù)制內(nèi)容到剪貼板代碼:
cssStr = "p { color:#FF0000;} a { font-size:9pt;}";
var style = win.document.createElement("style");
style.type = "text/css";
style.innerHTML = cssStr;
win.document.getElementsByTagName("HEAD").item(0).appendChild(style); 4、table在后面添加加行或列,通用寫法insertRow(-1),insertCell(-1)
IE中insertRow(),insertCell()這樣寫也可以,F(xiàn)irefox不認(rèn)
5、警告對(duì)話框alert(),IE中書寫時(shí)無(wú)參數(shù)則默認(rèn)參數(shù)為空字符串,F(xiàn)irefox中則必須輸入?yún)?shù),傳空參數(shù)則要寫成alert("");
6、給element.style.width賦值必須寫成24px,只寫數(shù)字24的話,F(xiàn)ireFox會(huì)不認(rèn),IE里都可以
7、在使用Element,并給其綁定了onclick、onmouseover、onmousedown、onmouseout等事件
element.onclick = function() { alert("hello kitty"); };
時(shí),需注意
將此元素添加到上級(jí)元素上時(shí)要用appendChild,不可以在上級(jí)中使用innerHTML操作,這樣會(huì)使事件無(wú)效
JavaScript技術(shù):一個(gè)多瀏覽器支持的背景變暗的div并可拖動(dòng)提示窗口功能的代碼,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。