最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用Javascript判斷操作系統(tǒng)的類型實(shí)現(xiàn)不同操作系統(tǒng)下的兼容性

 更新時間:2013年01月29日 11:22:21   作者:  
在通過Javascript實(shí)現(xiàn)客戶端和服務(wù)端的交互時,有時候需要對操作系統(tǒng)進(jìn)行判斷,以便實(shí)現(xiàn)不同操作系統(tǒng)下的兼容性;從而實(shí)現(xiàn)網(wǎng)站在跨平臺瀏覽時候保持良好的用戶體驗(yàn),感興趣的朋友可以了解下啊,或許對你有所幫助
在通過Javascript實(shí)現(xiàn)客戶端和服務(wù)端的交互時,有時候需要對操作系統(tǒng)進(jìn)行判斷,以便實(shí)現(xiàn)不同操作系統(tǒng)下的兼容性,比如:我們有一個網(wǎng)站, 在Windows XP下瀏覽效果良好,但是到了Ubuntu下,由于許多特性不同,會造成在瀏覽上的細(xì)微差異,甚至?xí)绊懙搅己玫挠脩趔w驗(yàn)。這個時候我們就需要利用 Javascript對操作系統(tǒng)的類型以及某些特性進(jìn)行判斷,分而治之,從而實(shí)現(xiàn)網(wǎng)站在跨平臺瀏覽時候保持良好的用戶體驗(yàn)。
下邊的代碼實(shí)現(xiàn)對Windows、Mac、Linux、Unix擦作系統(tǒng)的判斷:
復(fù)制代碼 代碼如下:

<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>

如果我們需要對Windows操作系統(tǒng)進(jìn)行更為精確的識別,可以繼續(xù)使用下邊的代碼操作:
復(fù)制代碼 代碼如下:

<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)對瀏覽器是否支持XML特性的檢測:
復(fù)制代碼 代碼如下:

<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)文字不同而對頁面布局造成影響,應(yīng)盡量避免CSS中使用固定行高(height:12px;)對 文字高度進(jìn)行限定,應(yīng)該盡量使用height:auto,如果迫不得已必須限定文字高度(比如只顯示一行),則應(yīng)使用em代替px(例如 height:1.1em;),1em=1文字高度,這樣就使得文字高度隨著文字大小動態(tài)改變,不會造成文字截?cái)喱F(xiàn)象的發(fā)生了。

相關(guān)文章

  • 純js代碼實(shí)現(xiàn)簡單計(jì)算器

    純js代碼實(shí)現(xiàn)簡單計(jì)算器

    這篇文章主要介紹了純js代碼實(shí)現(xiàn)簡單計(jì)算器,功能超簡單,實(shí)現(xiàn)加減乘除簡單運(yùn)算,感興趣的小伙伴們可以參考一下
    2015-12-12
  • JavaScript中常見的數(shù)據(jù)格式化方式詳解

    JavaScript中常見的數(shù)據(jù)格式化方式詳解

    這篇文章主要為大家詳細(xì)介紹了JavaScript中常見的數(shù)據(jù)格式化方式,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以了解一下
    2023-12-12
  • 用JS得到字符串中出現(xiàn)次數(shù)最多的字母

    用JS得到字符串中出現(xiàn)次數(shù)最多的字母

    一個字符串String=“adadfdfseffserfefsefseetsdg”,找出里面出現(xiàn)次數(shù)最多的字母和出現(xiàn)的次數(shù)。 經(jīng)典的解答思路為:取出字符串的第一個字符(首字母),利用的字符串的 replace 方法將符合正則表達(dá)式(第一個字符)替代為空,此字母出現(xiàn)的次數(shù)為原始的字符串長度減去替代后的字符串長度。循環(huán)迭代找出長度最長的字母。
    2008-03-03
  • 把文本中的URL地址轉(zhuǎn)換為可點(diǎn)擊鏈接的JavaScript、PHP自定義函數(shù)

    把文本中的URL地址轉(zhuǎn)換為可點(diǎn)擊鏈接的JavaScript、PHP自定義函數(shù)

    這篇文章主要介紹了把文本中的URL地址轉(zhuǎn)換為可點(diǎn)擊鏈接的JavaScript、PHP自定義函數(shù),需要的朋友可以參考下
    2014-07-07
  • JavaScript如何攔截全局Fetch的請求與響應(yīng)詳解

    JavaScript如何攔截全局Fetch的請求與響應(yīng)詳解

    全局的fetch()方法用于發(fā)起獲取資源的請求,它返回一個promise,這個promise會在請求響應(yīng)后被resolve,并傳回Response對象,這篇文章主要給大家介紹了關(guān)于JavaScript如何攔截全局Fetch的請求與響應(yīng)的相關(guān)資料,需要的朋友可以參考下
    2024-04-04
  • javascript模擬post提交隱藏地址欄的參數(shù)

    javascript模擬post提交隱藏地址欄的參數(shù)

    想要隱藏地址欄的參數(shù),就只能用javascript模擬post提交,下面是示例代碼,需要的朋友可以看看
    2014-09-09
  • 關(guān)于uniapp中onReachBottomDistance屬性的使用

    關(guān)于uniapp中onReachBottomDistance屬性的使用

    這篇文章主要介紹了關(guān)于uniapp中onReachBottomDistance屬性的使用方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • 修改file按鈕的默認(rèn)樣式實(shí)現(xiàn)代碼

    修改file按鈕的默認(rèn)樣式實(shí)現(xiàn)代碼

    file按鈕作為上傳文件使用,不過默認(rèn)的樣式確實(shí)讓人不敢恭維啊,如何才可以修改為漂亮一點(diǎn)的呢?接下來與大家分享下具體的實(shí)現(xiàn)代碼,感興趣的朋友可以參考下哈
    2013-04-04
  • layer.open組件獲取彈出層頁面變量、函數(shù)的實(shí)例

    layer.open組件獲取彈出層頁面變量、函數(shù)的實(shí)例

    今天小編就為大家分享一篇layer.open組件獲取彈出層頁面變量、函數(shù)的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • 詳解用async/await來處理異步

    詳解用async/await來處理異步

    這篇文章主要介紹了詳解用async/await來處理異步,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08

最新評論

汝州市| 遵义县| 古蔺县| 兰溪市| 汶川县| 庆阳市| 象山县| 乌兰浩特市| 原阳县| 桂平市| 信丰县| 宁化县| 三明市| 诸城市| 新邵县| 滨海县| 辽阳市| 湟中县| 临清市| 绩溪县| 滕州市| 七台河市| 元朗区| 全州县| 泽州县| 天全县| 东丰县| 石屏县| 密山市| 阳西县| 玉屏| 溆浦县| 饶河县| 监利县| 轮台县| 沙雅县| 漳平市| 贵港市| 永宁县| 文安县| 廉江市|