Javascript-форум (https://javascript.ru/forum/)
-   Мобильный JavaScript (https://javascript.ru/forum/mobile/)
-   -   Подключение скрипта для мобильных устройств (https://javascript.ru/forum/mobile/34837-podklyuchenie-skripta-dlya-mobilnykh-ustrojjstv.html)

tsigel 21.01.2013 12:58

Подключение скрипта для мобильных устройств
 
Возможно ли подключить скрипт только для мобильных устройств (или узнать из скрипта каким устройством открыта страница).

Под мобильными устройсвами имею в виду ещё и планшеты.

Спасибо.

tsigel 21.01.2013 17:18

сделал через navigator.userAgent, если есть альтернативные предложения - буду рад увидеть!

var userDeviceArray = [
    {device: 'Android', platform: /Android/},
    {device: 'iPhone', platform: /iPhone/},
    {device: 'iPad', platform: /iPad/},
    {device: 'Symbian', platform: /Symbian/},
    {device: 'Windows Phone', platform: /Windows Phone/},
    {device: 'Tablet OS', platform: /Tablet OS/},
    {device: 'Linux', platform: /Linux/},
    {device: 'Windows', platform: /Windows NT/},
    {device: 'Macintosh', platform: /Macintosh/}
];
var platform = navigator.userAgent;
function getPlatform() {
    for (var i in userDeviceArray) {
        if (userDeviceArray[i].platform.test(platform)) {
            return userDeviceArray[i].device;
        }
    }
    return 'Неизвестная платформа!' + platform;
}
alert('Ваша платформа: ' + getPlatform());

dmitriymar 22.01.2013 01:04

как на стороне клиента так и на стороне сервера 100% результат не даёт.
Но на стороне сервера можно узнать больше-вплоть до модели устройства(платные библиотеки для этого в основном вероятность правильного распознавания довольно велика)
А по юсер агенту -планшет с андроидом отдавал заголовки что он ай пад-такой юсер агент был в браузере.
На стороне сервера -прокси могут жрать, менять заголовки.
Комбинирование сервера и клиента при определении как вариант.

распознавание на стороне сервера. гуглить -распознавание на стороне сервера.

Но это неправильно, нужно распознавать и ориентироваться на возможности устройств, браузера ... а, не на эфемерную платформу. агент есть , а браузер не может того что должен нося это имя в агенте, заголовках

tsigel 22.01.2013 13:07

Большое спасибо!
Мне не нужна конкретная модель, мне нужно знать пк/ноут или мобильное устройство. Если проверка описанная выше не даст результатов то будет запускться второй фильтр, по размеру экрана. Вместе они должны хорошо определить. Я надеюсь.

Ещё раз спасибо!

KupueIIIKo 04.02.2013 09:42

tsigel,
JQuery mobile юзай) Сразу под все напишешь)

tsigel 04.02.2013 13:22

У меня на странице есть dragAndDrop, сейчас реализовано так: если это мобильное устройство, то надо выделить объект кликом, а потом кликом указать координаты перемещения, если ПК, то обычный DragAndDrop.

Не знаете возможен ли draganddrop для мобильного устройства?

KupueIIIKo 04.02.2013 15:58

tsigel,
Где то видел! Опять же на той же библиотеке что писал выше!

tsigel 04.02.2013 17:19

KupueIIIKo,
Спасибо, буду искать!


Часовой пояс GMT +3, время: 07:34.