2

Windows 専用のダウンロード可能なプログラムを宣伝したい Web サイトを運営しています。

概要:

If Operating System = Windows

Then set visibility of Div 'adforwindows' to visible
Else Set visibility of Div 'adforwindows' to hidden

これを実行できる優れたhtml/javascriptスクリプトを知っている人はいますか?

編集

これは解決策ですか?うまくいかないようです。

<!DOCTYPE html>
<html>
<head>
<script>
var OSName="Unknown OS";
if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";

if(OSName == "Windows"){
   document.getElementById('adforwindows').style.visibility = "visible";
}
else{
   document.getElementById('adforwindows').style.visibility = "hidden";
}
</script>
</head>
<body>
<div class="adforwindows">
Windows Advert 
</div>
<p>Main site content<P>
</body>
</html>
4

2 に答える 2

3

このコードからOSをすでに知っているので(ウェブサイトから取得)

var OSName="Unknown OS";
if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";

したがって、単純な if ステートメントを使用して確認し、document.getElementById を使用して可視性を設定できます。

var OSName="Unknown OS";
if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";

if(OSName == "Windows"){
   document.getElementById('adforwindows').style.display = "block";
}
else{
   document.getElementById('adforwindows').style.display = "none";
}


他のオペレーティング システムを知る必要がない場合は、次の短いコードを使用してください。

if (navigator.appVersion.indexOf("Win")!=-1)
   document.getElementById('adforwindows').style.display = "block";
}
else{
   document.getElementById('adforwindows').style.display = "none";
}


編集:visibility:none/visible代わりにそれを持ちたい場合はdisplay:none(違いがあります:http.style.display = "none"; ://www.w3schools.com/css/css_display_visibility.aspに変更して.style.visibility = "hidden"; 変更 できます.style.display = "block";.style.visibility = "visible";

于 2014-01-04T14:25:54.787 に答える
0

navigator.platformまたはを使用できますnavigator.appVersion

例えば:

var getOS = function() {
    var operatingSystems = {
        'Win': 'Windows',
        'Mac': 'MacOS',
        'Linux': 'Linux',
        'X11': 'UNIX'
    };
    for(var k in operatingSystems) {
        if(navigator.appVersion.indexOf(k) !== -1) {
            return operatingSystems[k];
        }
    }
    return undefined;
};

console.log(getOS());

var os = getOS();
document.getElementById('adforwindows').style.display = os === 'Windows'
    ? 'block'
    : 'none';

デモ

https://developer.mozilla.org/en-US/docs/Web/API/NavigatorIDを参照してください

于 2014-01-04T14:33:34.863 に答える