一段非常簡單的js判斷瀏覽器的內(nèi)核
大家應(yīng)該還記得JavaScript行內(nèi)樣式怎么寫吧?(看來我是廢話了?。?/p>
在前端開發(fā)過程中,有時我們需要判斷瀏覽器的內(nèi)核前綴,對不同的瀏覽器做出不同的處理,因此我們可以這么做。
alert(element.style.webkitTransition); 這個是獲取以webkit為前綴的transition值。但如果不是webkit為前綴的瀏覽器,則會返回undefined。而我們可以將所有的內(nèi)核前綴給枚舉出來,然后獲取其某個CSS的值,即可做出判斷。代碼如下:
function getVendorPrefix() { // 使用body是為了避免在還需要傳入元素 var body = document.body || document.documentElement, style = body.style, vendor = ['webkit', 'khtml', 'moz', 'ms', 'o'], i = 0; while (i < vendor.length) { // 此處進行判斷是否有對應(yīng)的內(nèi)核前綴 if (typeof style[vendor[i] + 'Transition'] === 'string') { return vendor[i]; } i++; } }
然后只需要調(diào)用getVendorPrefix()即可知道瀏覽器的內(nèi)核前綴,如果返回undefined則證明瀏覽器不支持CSS3屬性,即沒有內(nèi)核前綴。
大家應(yīng)該知道,我們在寫代碼的過程中,能寫CSS就不寫JavaScritp,畢竟CSS的性能會比自己寫JS的高一些,因此,我們在開發(fā)一些實際應(yīng)該中,會用到transition,比如一個簡單的圖片輪播,我們可以使用CSS3的transition,也可以使用jQuery的animate或自己寫原生,但CSS3的性能肯定會高一些,因此我們可以寫兩套代碼,對于支持CSS3的瀏覽器則使用animation,而不支持的則使用計時器或animate。這樣的話能夠獲取更好的用戶體驗。
以上是看jquery.slides.js的插件心得,如有更好的方法,請一定告知筆者。
- Js智能判斷瀏覽器是關(guān)閉還是刷新的代碼
- js判斷橫豎屏及禁止瀏覽器滑動條示例
- javascript獲取和判斷瀏覽器窗口、屏幕、網(wǎng)頁的高度、寬度等
- js監(jiān)控IE火狐瀏覽器關(guān)閉、刷新、回退、前進事件
- JS辨別訪問瀏覽器判斷是android還是ios系統(tǒng)
- js/jquery判斷瀏覽器的方法小結(jié)
- JS判斷瀏覽器是否支持某一個CSS3屬性的方法
- 封裝好的js判斷操作系統(tǒng)與瀏覽器代碼分享
- 用js判斷是否為360瀏覽器的實現(xiàn)代碼
- js判斷瀏覽器版本以及瀏覽器內(nèi)核的方法
- JS判斷是否360安全瀏覽器極速內(nèi)核的方法
- 基于JavaScript判斷瀏覽器到底是關(guān)閉還是刷新(超準(zhǔn)確)
相關(guān)文章
javascript實現(xiàn)倒計時N秒后網(wǎng)頁自動跳轉(zhuǎn)代碼
這篇文章主要介紹了javascript實現(xiàn)倒計時N秒后網(wǎng)頁自動跳轉(zhuǎn)代碼,非常的實用,這里推薦給大家。2014-12-12JavaScript中的Error錯誤對象與自定義錯誤類型詳解
Error是JavaScript中最原始的錯誤對象,作為各種異常的基礎(chǔ)對象,還有多個衍生的具體的錯誤類型,這些錯誤對象類型在nodejs中也可應(yīng)用,這篇文章主要介紹了JavaScript中的Error錯誤對象與自定義錯誤類型,需要的朋友可以參考下2022-12-12JavaScript子窗口調(diào)用父窗口變量和函數(shù)的方法
這篇文章主要介紹了JavaScript子窗口調(diào)用父窗口變量和函數(shù)的方法,涉及JavaScript窗口調(diào)用的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10