web-dev-qa-db-fra.com

Un moyen simple d'identifier l'agent utilisateur iOS dans une instruction jQuery if / then?

Exactement comme ça sonne ..

Existe-t-il un moyen magique et facile de dire:

    if (user agent is iOS) {
        if (browserRatio >=1.5) {
            $container.css('min-height', '360px');
        } else {
            $container.css('min-height', '555px');
        }
     }
28
technopeasant

Je l'ai trouvé.

if (navigator.userAgent.match(/(iPod|iPhone|iPad)/)) {
    if (browserRatio >=1.5) {
        $container.css('min-height', '360px');
    } else {
        $container.css('min-height', '555px');
    }
}
66
technopeasant

Je sais que vous posez des questions sur jquery en particulier, mais IMO, vous voulez certainement utiliser CSS3 @media requêtes pour cela. Il y a même un support pour tester pour orientation paysage ou portrait .

@media (orientation:landscape) {
  .container_selector {
    min-height: 555px;
  }
}
@media (orientation:portrait) {
  .container_selector {
    min-height: 360px;
  }
}

J'espère que cela t'aides!

2
jimbo

Pour que cela fonctionne, vous devrez définir browserWidth, mais oui, cela fonctionnera. Ici, je visais uniquement l'iPad.

    $(window).load(function(){
      var browserWidth = $(window).width(); 

      if (navigator.userAgent.match(/(iPad)/)) {
        if (browserWidth == 768) {
            $('.sectionI').css({'margin-left': '30px'});
        } else if (browserWidth == 1024)  {
            $('.sectionI').css({'margin-left': '0px'});
        }
      }
    });
1
Aaron

Pour la version de l'application Web, essayez ceci.

if (
    ("standalone" in window.navigator) &&
    !window.navigator.standalone
    ){

    // .... code here ....
}
1
Aaron

Pour vous assurer que cette chaîne ne correspond pas: Mozilla/5.0 (Mobile; Windows Phone 8.1; Android 4.0; ARM; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Lumia 925) like iPhone OS 7_0_3 Mac OS X AppleWebKit/537 (KHTML, like Gecko) Mobile Safari/537 changez simplement votre code en

if (navigator.userAgent.match(/(\(iPod|\(iPhone|\(iPad)/)) {
    if (browserRatio >=1.5) {
        $container.css('min-height', '360px');
    } else {
        $container.css('min-height', '555px');
    }
}
0
Erando