利用Javascript判斷操作系統(tǒng)的類型實(shí)現(xiàn)不同操作系統(tǒng)下的兼容性
下邊的代碼實(shí)現(xiàn)對(duì)Windows、Mac、Linux、Unix擦作系統(tǒng)的判斷:
<script type="text/javascript" language="JavaScript">
<!--
function check_os() {
windows = (navigator.userAgent.indexOf("Windows",0) != -1)?1:0;
mac = (navigator.userAgent.indexOf("mac",0) != -1)?1:0;
linux = (navigator.userAgent.indexOf("Linux",0) != -1)?1:0;
unix = (navigator.userAgent.indexOf("X11",0) != -1)?1:0;
if (windows) os_type = "MS Windows";
else if (mac) os_type = "Apple mac";
else if (linux) os_type = "Lunix";
else if (unix) os_type = "Unix";
return os_type;
}
//-->
</script>
如果我們需要對(duì)Windows操作系統(tǒng)進(jìn)行更為精確的識(shí)別,可以繼續(xù)使用下邊的代碼操作:
<script type="text/javascript" language="JavaScript">
<!--
var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows"); // 確保為windows系統(tǒng)
var isWin98 = isWin2000 = isWinXP = false;
var sUserAgent = navigator.userAgent;
if(isWin) {
isWin98=sUserAgent.indexOf("Win98") > -1 || sUserAgent.indexOf("Windows 98") > -1; // win98
isWin2000=sUserAgent.indexOf("Windows NT 5.0") > -1 || sUserAgent.indexOf("Windows 2000") > -1; //win2000
isWinXP=sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows Xp") > -1; //winxp
isWin98 && alert("window 98");
isWin2000 && alert("windows 2000");
isWinXP && alert("windows XP");
}
//-->
</script>
下邊的代碼是為了實(shí)現(xiàn)對(duì)瀏覽器是否支持XML特性的檢測(cè):
<script type="text/javascript" language="JavaScript">
var SupportXml=false;
var xmldom;
if(window.ActiveXObject) {
try {
xmldom=new ActiveXObject("Microsoft.XMLDOM");
SupportXml=(xmldom.loadXML(" <ok/>"));
} catch(e) {}
}
else if(document.implementation && document.implementation.createDocument) {
SupportXml=true;
}
alert('XML狀態(tài)為:'+SupportXml);
</script>
PS:為了更好地避免不同瀏覽器,不同操作系統(tǒng)因?yàn)槟J(rèn)文字不同而對(duì)頁(yè)面布局造成影響,應(yīng)盡量避免CSS中使用固定行高(height:12px;)對(duì) 文字高度進(jìn)行限定,應(yīng)該盡量使用height:auto,如果迫不得已必須限定文字高度(比如只顯示一行),則應(yīng)使用em代替px(例如 height:1.1em;),1em=1文字高度,這樣就使得文字高度隨著文字大小動(dòng)態(tài)改變,不會(huì)造成文字截?cái)喱F(xiàn)象的發(fā)生了。
- JS如何判斷瀏覽器類型和詳細(xì)區(qū)分IE各版本瀏覽器
- 利用JavaScript判斷瀏覽器類型及版本
- js根據(jù)手機(jī)客戶端瀏覽器類型,判斷跳轉(zhuǎn)官網(wǎng)/手機(jī)網(wǎng)站多個(gè)實(shí)例代碼
- js/jquery判斷瀏覽器類型的方法小結(jié)
- js判斷當(dāng)前瀏覽器類型,判斷IE瀏覽器方法
- 利用js判斷瀏覽器類型(是否為IE,Firefox,Opera瀏覽器)
- js如何判斷不同系統(tǒng)的瀏覽器類型
- js判斷手機(jī)瀏覽器操作系統(tǒng)和微信瀏覽器的方法
- 封裝好的js判斷操作系統(tǒng)與瀏覽器代碼分享
- JS判斷瀏覽器類型與操作系統(tǒng)的方法分析
相關(guān)文章
innerHTML,outerHTML,innerTEXT三者之間的區(qū)別
innerHTML,outerHTML,innerTEXT三者之間的區(qū)別...2007-01-01js獲取當(dāng)前年月日詳細(xì)教程(看這一篇就夠了)
這篇文章主要給大家介紹了關(guān)于js獲取當(dāng)前年月日的相關(guān)資料,JavaScript內(nèi)置的Date對(duì)象是獲取當(dāng)前日期最常用的工具之一,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12js利用prototype調(diào)用Array的slice方法示例
這篇文章主要介紹了如何利用js的prototype調(diào)用Array的slice方法,需要的朋友可以參考下2014-06-06原生javascript實(shí)現(xiàn)讀寫CSS樣式的方法詳解
最近學(xué)習(xí)中遇到這個(gè)問(wèn)題,為了日后方便查詢,本人翻閱了一些資料總結(jié)了以下方法,僅限原生JS,如有不對(duì)的地方歡迎指出!只求大家看完覺(jué)得有學(xué)到點(diǎn)什么就OK了!下面這篇文章主要介紹了利用原生javascript實(shí)現(xiàn)讀寫CSS樣式的方法,需要的朋友可以參考下。2017-02-02Javascript 實(shí)現(xiàn)的數(shù)獨(dú)解題算法網(wǎng)頁(yè)實(shí)例
此算法的實(shí)現(xiàn),就是模擬人腦的思考和計(jì)算過(guò)程,有需要的朋友可以參考一下2013-10-10微信小程序?qū)崿F(xiàn)tab點(diǎn)擊切換
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)tab點(diǎn)擊切換,不滑動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07JS點(diǎn)擊某個(gè)圖標(biāo)或按鈕彈出文件選擇框的實(shí)現(xiàn)代碼
本文給大家介紹js點(diǎn)擊點(diǎn)擊某個(gè)圖標(biāo)或按鈕彈出文件選擇框的實(shí)現(xiàn)代碼,代碼簡(jiǎn)單易懂,非常不錯(cuò),感興趣的朋友可以參考下2016-09-09js Cannot set properties of null(se
今天增加功能的時(shí)候,提示Uncaught TypeError: Cannot set properties of null (setting onclick)問(wèn)題分享下,需要的朋友可以參考下2023-06-06用javascript獲取任意顏色的更亮或更暗顏色值示例代碼
最近在工作中遇到的一個(gè)需求,發(fā)現(xiàn)網(wǎng)上沒(méi)有相對(duì)應(yīng)的解決方法,索性自己寫一個(gè),所以這篇文章主要給大家介紹了關(guān)于利用javascript獲取任意顏色更亮或更暗顏色值的相關(guān)資料,文中給出了詳細(xì)的示例代碼,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-07-07