前端工作中的兼容問(wèn)題

一:css
兼容性:頁(yè)面在各個(gè)瀏覽器顯示的不一樣

雙倍邊矩:
    解決:給浮動(dòng)元素加display:inline;

清浮動(dòng):
    解決:給浮動(dòng)元素的父級(jí)加zoom:1;

margin負(fù)值:
    解決:用position:relative

最小高度:
    解決:用overflow:hidden;    

透明度:
    解決:
    filter:alpha(opacity=20)
    filter:alpha(opacity:20)                
單像素:
    解決:設(shè)置雙像素

文字重影:
    解決:background:none;

png透明圖片:
    解決:用Js

hack: 樣式的前綴
_ IE6
* IE6,IE7

條件注釋?zhuān)?br>

二:JS
獲取非行間樣式:
get Computed Style(obj,false).width蓬痒;存在兼容性問(wèn)題;兼容chrome 狱掂、FF趋惨、ie9+器虾;

obj.currentStyle.width:兼容IE系列;

DOM 不兼容問(wèn)題:
|| 取值:從左往右,取為真的那個(gè)值兆沙,

子元素:
父級(jí).children:父級(jí)下面的子元素;

父元素:
obj.parentNode:獲取元素的父級(jí);

下一個(gè)兄弟節(jié)點(diǎn)[不兼容]:
兼容性問(wèn)題解決方案:
var oNext = obj.nextElementSibling || obj.nextSibling;
obj.nextSibling:
所有的瀏覽器都支持這個(gè)方法,只不過(guò)高版本瀏覽器[IE9+]中會(huì)識(shí)別文本節(jié)點(diǎn)[普通文字,空格,空行]; 低版本里面就是元素節(jié)點(diǎn)[li,p,span···],
obj.nextElementSibling:
高版本瀏覽器兼容;不兼容IE8--;如果低版本瀏覽器不識(shí)別的話(huà)會(huì)報(bào)錯(cuò)undefined;undeifned就是false;

|| 或運(yùn)算符從左往右只看一個(gè)條件,這個(gè)條件如果為真,就不會(huì)再接著看后面的了,如果為假,就繼續(xù)選擇后面的條件.

上一個(gè)兄弟節(jié)點(diǎn)[不兼容]:
兼容性問(wèn)題解決方案:
var oPrev = obj.previousElementSibling || obj.previousSibling;
obj.previousSibling:
所有的瀏覽器都支持這個(gè)方法,只不過(guò)高版本瀏覽器[IE9+]中會(huì)識(shí)別文本節(jié)點(diǎn)[普通文字,空格,空行]; 低版本里面就是元素節(jié)點(diǎn)[li,p,span···],
obj.previousElementSibling:
高版本瀏覽器兼容;不兼容IE8--;如果低版本瀏覽器不識(shí)別的話(huà)會(huì)報(bào)錯(cuò)undefined;undeifned就是false;

父級(jí)下的第一個(gè)子元素[不兼容]:
兼容性問(wèn)題解決方法:
父級(jí).firstElementChild || 父級(jí).firstChild;
父級(jí).firstElementChild:
所有的瀏覽器都支持這個(gè)方法,只不過(guò)高版本瀏覽器[IE9+]中會(huì)識(shí)別文本節(jié)點(diǎn)[普通文字,空格,空行]; 低版本里面就是元素節(jié)點(diǎn)[li,p,span···],
父級(jí).firstChild:
高版本瀏覽器兼容;不兼容IE8--;如果低版本瀏覽器不識(shí)別的話(huà)會(huì)報(bào)錯(cuò)undefined;undeifned就是false;

父級(jí)下的最后一個(gè)子元素[不兼容]:
兼容性問(wèn)題解決方法:
父級(jí).lastElementChild || 父級(jí).lastChild;
父級(jí).lastElementChild:
所有的瀏覽器都支持這個(gè)方法,只不過(guò)高版本瀏覽器[IE9+]中會(huì)識(shí)別文本節(jié)點(diǎn)[普通文字,空格,空行]; 低版本里面就是元素節(jié)點(diǎn)[li,p,span···],
父級(jí).lastChild:
高版本瀏覽器兼容;不兼容IE8--;如果低版本瀏覽器不識(shí)別的話(huà)會(huì)報(bào)錯(cuò)undefined;undeifned就是false;

滾動(dòng)距離兼容性問(wèn)題:

window.onscroll:滾動(dòng)滾動(dòng)條的時(shí)候觸發(fā);

滾動(dòng)距離:
橫向:
document.body.scrollLeft//不兼容IE和FF库正;
document.documentElement.scrollLeft//兼容IE和FF,chrome是0洞渤;
兼容性問(wèn)題:

縱向:
    document.body.scrollTop;只兼容chrome,其他的都是0抡蛙;
    document.documentElement.scrollTop;//兼容IE和FF粗截;chrome是0熊昌;
    兼容性問(wèn)題:
        var scrollT = document.documentElement.scrollTop || document.body.scrollTop;

事件對(duì)象兼容性問(wèn)題:

事件對(duì)象:
event:描述或者包含事件的更加詳細(xì)的信息;

event:不兼容FF;
ev: 兼容IE9+,FF,Chrome,IE8--報(bào)undefined;

clientX:X軸的坐標(biāo)
clientY:Y軸的坐標(biāo)

事件綁定兼容性問(wèn)題:

事件綁定:語(yǔ)法規(guī)則:
obj.addEventListener(事件名,函數(shù)名,是否捕獲);//false
關(guān)于三個(gè)參數(shù):
    事件名不加on
    函數(shù)名不加();
    false;
obj.addEventListener:兼容IE9+,chrome,FF;

IE:
attachEvent(事件名,函數(shù)名);
關(guān)于兩個(gè)參數(shù):
事件名必須加on,
函數(shù)名不加();

事件解除綁定:
obj.removeEventListener(事件名,函數(shù)名,是否捕獲);
obj.removeEventListener:兼容IE9+,chrome,FF;
IE:
obj.detachEvent(事件名,函數(shù)名);

鼠標(biāo)滾輪事件兼容性問(wèn)題:

鼠標(biāo)滾輪事件:
obj.onmousewheel:兼容IE系列和chrome;
DOMMouseScroll:火狐下使用;
addEventListener('DOMMouseScroll',fn,false);//火狐滾動(dòng)輪事件昂利,要用事件綁定來(lái)實(shí)現(xiàn)蜂奸。

滾動(dòng)方向:
oEvent.wheelDelta//
chrome&&IE: 在火狐下undefined;
上: 120扩所;
下: -120祖屏;
火狐下:oEvent.detail:
上:-3赐劣;
下: 3魁兼;

oninput兼容性問(wèn)題:

oninput:統(tǒng)計(jì)輸入框文字變化盖呼;不兼容IE8--几晤;

onchange:當(dāng)值發(fā)生變化的時(shí)候觸發(fā),必須失去焦點(diǎn)才觸發(fā)蟹瘾;

onpropertychange:不兼容IE11和IE9,IE9刪除不好使;

window.onload:
頁(yè)面加載完成: html div+css,js,文字,圖片·····
頁(yè)面加載最耗性能和資源的就是圖片;

DOMContentLoaded:用事件綁定的方法添加憾朴;

事件委托兼容性問(wèn)題:

事件委托:[把事件加給父級(jí)]不一定非得是直接父級(jí);
事件源:事假的源頭;  
    oEvent.target;//IE8--undefined;
    oEvent.srcElement;//不兼容FF--undefined;

事件委托的好處:
1>.性能高;
2>.可以給未來(lái)的元素添加事件;

oEvent.toElement;//移動(dòng)到那里去,也就是目標(biāo)點(diǎn);
不兼容FF做祝,報(bào)undefined;
oEvent.relatedTarget;:
不兼容IE8--编兄,報(bào)undefined;

obj里面是否包含我們要查找的元素:  
obj.contains(元素)//包含的話(huà)返回true,不包含返回false;
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市捌刮,隨后出現(xiàn)的幾起案子绅作,更是在濱河造成了極大的恐慌个少,老刑警劉巖夜焦,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件茫经,死亡現(xiàn)場(chǎng)離奇詭異抹镊,居然都是意外死亡垮耳,警方通過(guò)查閱死者的電腦和手機(jī)终佛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén)查蓉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)妹田,“玉大人鬼佣,你說(shuō)我怎么就攤上這事晶衷∩稳遥” “怎么了锹漱?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵毕泌,是天一觀的道長(zhǎng)撼泛。 經(jīng)常有香客問(wèn)我愿题,道長(zhǎng)抠忘,這世上最難降的妖魔是什么拧咳? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任骆膝,我火速辦了婚禮阅签,結(jié)果婚禮上政钟,老公的妹妹穿的比我還像新娘养交。我一直安慰自己碎连,他們只是感情好鱼辙,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著峭梳,像睡著了一般葱椭。 火紅的嫁衣襯著肌膚如雪孵运。 梳的紋絲不亂的頭發(fā)上治笨,一...
    開(kāi)封第一講書(shū)人閱讀 49,079評(píng)論 1 285
  • 那天顺又,我揣著相機(jī)與錄音稚照,去河邊找鬼果录。 笑死弱恒,一個(gè)胖子當(dāng)著我的面吹牛返弹,可吹牛的內(nèi)容都是我干的义起。 我是一名探鬼主播,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼抡诞,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼昼汗!你這毒婦竟也來(lái)了顷窒?” 一聲冷哼從身側(cè)響起鞋吉,我...
    開(kāi)封第一講書(shū)人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎赊锚,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體耸袜,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了资昧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片格带。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡叽唱,死狀恐怖棺亭,靈堂內(nèi)的尸體忽然破棺而出镶摘,到底是詐尸還是另有隱情凄敢,我是刑警寧澤涝缝,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站消恍,受9級(jí)特大地震影響狠怨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜恰矩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一外傅、第九天 我趴在偏房一處隱蔽的房頂上張望萎胰。 院中可真熱鬧技竟,春花似錦榔组、人聲如沸搓扯。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)锦担。三九已至慨削,卻和暖如春缚态,著一層夾襖步出監(jiān)牢的瞬間玫芦,已是汗流浹背桥帆。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工叶骨, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留忽刽,地道東北人夺欲。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓伞剑,卻偏偏與公主長(zhǎng)得像纸泄,于是被迫代替她去往敵國(guó)和親聘裁。 傳聞我的和親對(duì)象是個(gè)殘疾皇子衡便,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • <a name='html'>HTML</a> Doctype作用?標(biāo)準(zhǔn)模式與兼容模式各有什么區(qū)別? (1)呆抑、<...
    clark124閱讀 3,456評(píng)論 1 19
  • 在線閱讀 http://interview.poetries.top[http://interview.poetr...
    程序員poetry閱讀 114,266評(píng)論 24 450
  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案食绿? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,728評(píng)論 1 92
  • 時(shí)間有時(shí)真的不是在被我們管理著耀销,相反熊尉,我們才是被時(shí)間管理著。與其做時(shí)間的主人硝清,還不如做時(shí)間的朋友芦拿。 開(kāi)啟自己的心智...
    古月適之不適閱讀 221評(píng)論 0 0
  • “人生若只如初見(jiàn)未桥,何事秋風(fēng)悲畫(huà)扇冬耿? 等閑變卻故人心亦镶,卻道故人心易變袱瓮〕呓瑁”——清·納蘭性德 1. 假設(shè)你是一個(gè)情竇初開(kāi)...
    沈萬(wàn)九閱讀 4,256評(píng)論 50 87