記錄一下前端開(kāi)發(fā)兼容性問(wèn)題的一些坑
1.火狐
(1)火狐瀏覽器的a,span,button等標(biāo)簽在聚焦時(shí)會(huì)出現(xiàn)一條黑色的虛線尖昏,這個(gè)需要在CSS中寫入:
????????????button::-moz-focus-inner{outline:0;border-color:transparent;}
(2)火狐瀏覽器在button中包裹<input type=“file”/>會(huì)導(dǎo)致input無(wú)法被正常點(diǎn)擊,在使用其他標(biāo)簽時(shí)可以正常解決這個(gè)問(wèn)題焕毫;
2.IE
ie主要遇到的是一些es6的支持問(wèn)題,比如Promise,fetch,以及很多array和object的新方法都無(wú)法支持,Promise可以使用bluebird處理痴颊,fetch可以引入whatwg-fetch處理,其他的一些方法可以用babel-polyfill處理屡贺,但是需要注意babel-polyfill對(duì)于個(gè)別幾個(gè)es6特性也是無(wú)法兼容的蠢棱。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?箭頭函數(shù)? ? 支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?類的聲明和繼承? ? 部分支持,IE8不支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 增強(qiáng)的對(duì)象字面量? ? 支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?字符串模板? ? 支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 解構(gòu)? ? 支持甩栈,但注意使用方式
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?參數(shù)默認(rèn)值泻仙,不定參數(shù),拓展參數(shù)? ? 支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?let與const? ? 支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?for of? ? IE不支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?iterator, generator? ? 不支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 模塊 module量没、Proxies玉转、Symbol? ? 不支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? Map,Set 和 WeakMap殴蹄,WeakSet? ? 不支持
Promises究抓、Math,Number袭灯,String刺下,Object 的新API? ? 不支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? export & import? ? 支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?生成器函數(shù)? ? 不支持
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?數(shù)組拷貝? ? ?支持
以上是babel-polyfill支持情況的表
3.QQ瀏覽器
最新版本使用的是IE11的內(nèi)核,兼容性只要能保證IE11的問(wèn)題解決稽荧,QQ瀏覽器的問(wèn)題基本都可以解決橘茉。
4.搜狗瀏覽器
分兼容版和高速版,高速版只用的是谷歌內(nèi)核姨丈,效果還可以畅卓,兼容版用的是IE11的內(nèi)核。切換時(shí)有的時(shí)候會(huì)切換成IE11的兼容版內(nèi)核蟋恬,那就很蛋疼了翁潘。
5.safari
當(dāng)觸發(fā)滾動(dòng)時(shí),如果想獲取頁(yè)面滾動(dòng)高度筋现,需要獲得的屬性和其他瀏覽器都不一樣:
其他瀏覽器:document.documentElement.scrollTop唐础;
safari:document.body.scrollTop;
這兩個(gè)屬性各個(gè)瀏覽器都有矾飞,但是如果不支持的會(huì)始終為0