JS检测safari桌面不移动

时间:2016-06-16 11:03:10

标签: javascript mobile safari

我正在尝试根据特定规则显示不同的文本。这就是我需要实现的目标。

如果访客在:

桌面=显示消息1

桌面但使用safari =显示消息2(非消息1)

移动=显示消息3

移动&使用safari(显示消息3. NOT消息2)

我要走的路线是这个,但我真的不是程序员,除了检测用户是否在野生动物园时我有点卡住了!它需要在桌面上的safari上显示,但在safari移动设备上显示不同的消息。我看了看论坛,但没有什么太相似的东西跳出来,所以我真的很感激任何帮助!:

<script type="text/javascript">
var isMobile = {
    Android: function() {
        return navigator.userAgent.match(/Android/i);
    },
    BlackBerry: function() {
        return navigator.userAgent.match(/BlackBerry/i);
    },
    iOS: function() {
        return navigator.userAgent.match(/iPhone|iPad|iPod/i);
    },
    Opera: function() {
        return navigator.userAgent.match(/Opera Mini/i);
    },
    Windows: function() {
        return navigator.userAgent.match(/IEMobile/i);
    },
    any: function() {
        return (isMobile.Android() || isMobile.BlackBerry() ||    isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
    }
};

if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) 
{document.writeln("<p>You're using safari!</p>");} 

非常感谢!

1 个答案:

答案 0 :(得分:0)

您可以使用相同的navigator对象。

如果以模拟模式加载应用程序并运行navigator.userAgent

你可能会看到这个

Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 
(KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36"

匹配移动这个词可以帮助您了解它是桌面还是浏览器