根据操作系统显示或隐藏Div [英] Show or Hide Div based on OS

查看:128
本文介绍了根据操作系统显示或隐藏Div的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我经营一个网站,我仅希望在该网站上宣传适用于Windows的可下载程序。

I operate a website in which I would like to be able to advertise an downloadable program for windows only.

  • The advert for this will lie inside a div called 'adforwindows'.
  • I would like to use a detection method similar to the one listed here: http://www.javascripter.net/faq/operatin.htm

摘要:

If Operating System = Windows

然后设置可见性Div'adforwindows'的可见状态
其他将Div'adforwindows'的可见性设置为隐藏

有人知道可以使用此功能的html / javascript脚本吗?

Does anyone know a good html/javascript script that can do this?

编辑

这是一个解决方案吗?似乎无法正常工作;

Is this a solution? Can't seem to get it to work;

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


推荐答案

由于您已经从此代码中了解了操作系统(

Since you would already know the OS from this code (taken from website)

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设置可见性。

You can thus use a simple if statement to check and document.getElementById to set the visibility.

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 you do not need to know the other operating systems, just use this shorter code:

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:// www .w3schools.com / css / css_display_visibility.asp
您可以将 .style.display = none; 更改为 .style.visibility = hidden;
并将 .style.display = block; 更改为 .style.visibility = visible;


if you want to have it visibility:none/visible instead of display:none (there is a difference: http://www.w3schools.com/css/css_display_visibility.asp you can change .style.display = "none"; to .style.visibility = "hidden"; and change .style.display = "block"; to .style.visibility = "visible";

这篇关于根据操作系统显示或隐藏Div的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆