繁体   English   中英

如何基于浏览器用户代理重定向页面?

[英]How do I redirect a page based on the browser user agent?

我正在使用此脚本来检测用户代理标头中的字符串“ safari”,然后将您重定向到“ android.html”,我将如何更改代码使其更改,以便在用户代理标头中不包含“ safari”的情况下进行重定向?

var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("safari") > -1; //&& ua.indexOf("mobile");
if(isAndroid) {
window.location = 'android.html';
}

编辑:这是我的修订代码。 这有意义吗? 它首先检测设备是否为android,然后如果是safari浏览器则将重定向。

var ua = navigator.userAgent.toLowerCase();
    var isAndroid = ua.indexOf("android") > -1;
    var isSafari = ua.indexOf("safari") == -1;
        if(isAndroid) {
        if(isSafari) {
        window.location = 'android.html';
        }
        }
if(!isAndroid) {
window.location = 'android.html';
}

只需使用变量名,将条件从> -1更改为== -1

var isAndroid = ua.indexOf("safari") == -1;
if(isAndroid) {
   window.location = 'android.html';
}

浏览器特定的检测通常不是首选方法,因为通常使用功能检测会更好。 您是否考虑过modernizr? http://www.modernizr.com/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM