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



我正在使用此脚本来检测用户代理标头中的字符串"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';
}

浏览器特定检测通常不是首选方法,因为通常最好使用特征检测。你想过现代化吗?http://www.modernizr.com/

最新更新