我想阻止Safari的所有用户访问我的Flash游戏网站。我希望他们能看到一张正在面对面而不是游戏的人的照片。
我的理解是你可以使用JavaScript来实现它,但我不想使用像JQuery这样的重型框架。有没有办法像一行或两行JavaScript那样做?
答案 0 :(得分:25)
这是一个可怕的,可怕的想法IMO。我可以理解这种情绪,但这会带来同样多的好处,并提出同样多的同情,就像“停止使用IE,白痴!”的网站一样。消息。但这取决于你......
Quirksmode有一个小BrowserDetect库,我相信它有所有的怪癖。如果我是你,我会用它。
要在一行中执行此操作,请在Safari
字符串中查找navigator.userAgent
。
示例代码:
if (navigator.userAgent.indexOf('Safari/') != -1){
alert("Safari detected");
}
如果你想100%确定你全部捕获它们(好吧,99%考虑到客户端可以自由更改用户代理字符串),你需要使用像PHP这样的服务器端语言。
if (strstr($_SERVER["HTTP_USER_AGENT"], "Safari"))
{
header("location:no-safari.html");
die();
}
答案 1 :(得分:2)
if(navigator.appName == "Safari")
{
....your code goes ....
}
答案 2 :(得分:2)
超过几行,但你可以非常简单地减少它,所以它只会困扰Safari:http://www.quirksmode.org/js/detect.html
稍微更坚固的方法是使用服务器端检测方法,如php的get_browser([string $user_agent [, bool $return_array = false ]])
毋庸置疑,这有点傻。