什么是User Agent?懂一點網頁制作的人應該都明白。簡單的說,User Agent就是用來識別各大瀏覽器名稱、版本、引擎以及操作系統等信息的內容。于是乎,User Agent的判斷就成為識別瀏覽器的關鍵,不僅僅如此,移動互聯網開發勢頭迅猛,那么通過User Agent判斷桌面端設備或移動設備就變的很為重要。當然,通過User Agent也可以用來改善一定的兼容性,比如判斷得到用戶用IE6瀏覽器那么就是用不同的代碼。這些,我想許多的WEB開發中已經成為考慮的第一個問題。
那么,有沒有一種好的判斷User Agent的代碼呢?網上應該有很多,比較簡單的直接判斷下iOS和Android,然后進入不一樣的頁面。比如百度地圖就是如此,桌面設備訪問http://map.baidu.com/地址,而移動設備就訪問http://map.baidu.com/mobile/地址,你用桌面設備訪問移動網址則還會自動跳回到桌面地址。這就是通過判斷User Agent做到的效果。
我沒有去細究百度地圖是如何判斷桌面設備和移動設備的,但我想要找到一個比較全面的User Agent判斷代碼。不知道大家是否知道有一個叫html5test的網站,其中要作用就是判斷你的瀏覽器對HTML5的支持程度,但同時,他還提供了瀏覽器和設備信息。我在桌面端通過Firefox、Chrome、IE、Safari等測試都很正確,在移動設備端,Apple iPod下測試了Safari、Opera mini和UC,除了UC無法識別外其他都OK,另外在Nokia E63下也做了測試,默認瀏覽器OK,UC無法識別。
既然HTML5TEST已經做的如此全面,連瀏覽器、引擎、設備類型和設備名稱等都一應俱全,那就說明在User Agent上的判斷應該是做的非常不錯的,至少,是我現今看到的最好的了。然后又看到HTML5TEST本身是開源的,那就下載下來分析一下吧。看過后,沒有想到,HTML5TEST竟然封裝的那么好,一個JS包含了基本上全部的User Agent判斷,這個js文件,可以直接瀏覽這里。
我把這個JS單獨拿出來,再加上幾句html,做了個瀏覽器測試的頁面,大家可以通過訪問這個頁面來查看自己的瀏覽器信息、設備信息等,效果請見下圖。
我想,通過這一個js,得到了瀏覽器信息、設備類型和設備名稱,接下來怎么做就看你自己的了,不過也有一個小小的擔心:一個大于50K的js文件,對頁面的加載似乎是有點壓力的。
順便說一下,發現IE對HTML5的DOCTYPE標簽支持不是很好,有測試不通過的現象。萬惡的IE確實挺讓人惱火的。
最后推薦一個FireFox的組件吧,我想許多人都用過,就是User Agent Switcher,作用呢就是在FF下偽裝成其他瀏覽器,比如iPhone的瀏覽器,這樣就可以直接在FF下瀏覽移動網頁進行代碼分析了。
Copyright@ 2011-2016 版權所有:大連千億科技有限公司 遼ICP備11013762-3號 google網站地圖 百度網站地圖 網站地圖
公司地址:大連市沙河口區中山路692號辰熙星海國際2317 客服電話:0411-39943997 QQ:2088827823 37482752
法律聲明:未經許可,任何模仿本站模板、轉載本站內容等行為者,本站保留追究其法律責任的權利! 隱私權政策聲明