Javascriptを利用してオペレーティングシステムのタイプを判断する.
20832 ワード
Javascriptを通じてクライアントとサービスの相互作用を実現するには、異なるオペレーティングシステムの互換性を実現するためにオペレーティングシステムを判断する必要があります.良いユーザー体験にも影響します.この時はJavascriptを利用してオペレーティングシステムのタイプといくつかの特性を判断し、分割して解決して、ウェブサイトがプラットフォームを跨いでブラウズする時に良好なユーザー体験を維持することを実現する必要があります.
下のコードはWindows、Mac、Linux、Unixをシステムに塗る判断を実現します.
下のコードはWindows、Mac、Linux、Unixをシステムに塗る判断を実現します.
<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のOSをより正確に識別する必要があるなら、次のコードを使って操作を続けてもいいです.<script type="text/javascript" language="JavaScript">
<!--
var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows"); // windows
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>
下のコードは、ブラウザがXML特性をサポートしているかどうかを検出するためです.<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 :'+SupportXml);
</script>
PS:異なるブラウザをよりよく避けるために、デフォルトの文字が異なるため、ページレイアウトに影響を与えるオペレーティングシステムは、できるだけCSSで固定行高を使用することを避けるべきである.文字の高さを制限するためには、height:auttを使うべきであり、やむを得ず文字の高さを限定しなければならない場合は、emをpxの代わりに使用しなければならない.(たとえばheight:1.1 m;)1 m=1文字の高さは、文字の大きさとともに文字の高さを動的に変化させ、文字の切り捨て現象が発生しないようにします.