2012-08-08 6 views
1

Je suis confronté au problème décrit dans this post. La solution suggérée ne me convient pas car j'utilise un plugin jQuery history/back button.La meilleure façon d'identifier la version mobile du navigateur

J'ai décidé de diviser css en versions - une pour les navigateurs de bureau (avec des fonctions de survol) et d'autres pour les mobiles. J'ai donc commencé à vérifier si l'en-tête de l'agent utilisateur du navigateur contient le mot Mobile. Comme je sais que seul Opera ne pas ajouter ce mot et utilise Mini.

Est-ce correct si je veux gérer la plupart des appareils iOS/Android?

Merci

Répondre

1

Vous pouvez également utiliser l'extrait de code fourni au detectmobilebrowsers.com. Ils fournissent un code de détection de navigateur mobile pour les langages communs utilisés pour les sites Web.

1

Je sais que votre question n'a pas été spécifiquement conçu pour Ruby on Rails, mais je peux partager avec vous le code que je utilise pour identifier les demandes mobiles. Il est assez bien vérifier l'en-tête de l'agent utilisateur pour l'existence Mobile ou Mini:

def is_mobile_request? 
    request.headers.select{ |k,v| k[/AGENT/]}.values.first[/mobile|mini/i] 
    end 

N'a pas eu de problèmes avec elle jusqu'à présent.

Questions connexes