Вопрос

Я разрабатываю мобильную версию веб-сайта.В настоящее время я использую этот Javascript для обнаружения и перенаправления пользователя:

if((navigator.userAgent.match(/iPhone/i)) || 
                (navigator.userAgent.match(/Android/i)) ||
                (navigator.userAgent.match(/iPod/i))) 
        { 
        window.location = "http://sitename.com/m/";
    }

Отлично работает с iPhone и iPod, но безуспешно с Android.Я использую эмулятор Android в Eclipse.У меня нет Android-гаджета, чтобы действительно протестировать это.

Я делаю что-то не так?У кого-нибудь есть такая же проблема?

Это было полезно?

Решение

Вы должны использовать местоположение.заменить вместо того , чтобы окно.Расположение

Пример:

if( (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/Android/i)) || (navigator.userAgent.match(/iPod/i)) ) { 
    location.replace("http://sitename.com/m/");
}

Я использовал этот код, и он работает на телефонах / устройствах iphone / itouch и Android.

Другие советы

Вот моя функция JavaScript для определения устройства Android:

function isAndroid() {
    var ua = navigator.userAgent;
    return ua.match(/Android/) 
        || ua.match(/Dalvik/)
        || ua.match(/GINGERBREAD/)
        || ua.match(/Linux;.*Mobile Safari/)
        || ua.match(/Linux 1\..*AppleWebKit/)
};

окно.местоположение не работает в Android?Неужели?Похоже, у меня все отлично работает на Android 2.3.4.Какие версии Android вы, ребята, использовали, когда не могли получить window.местоположение для успешной загрузки нового URL-адреса в браузере?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top