web-dev-qa-db-ja.com

jQueryのif / thenステートメントでiOSユーザーエージェントを識別する簡単な方法は?

まったく同じように聞こえます。

魔法のような簡単な言い方はありますか?

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

それを見つけた。

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

特にjqueryについて質問していることは知っていますが、IMOでは、ほぼ確実に CSS3 @mediaクエリ このため。 横向きまたは縦向き のテストもサポートされています。

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

お役に立てれば!

2
jimbo

これが機能するためには、browserWidthを定義する必要がありますが、はい、機能します。ここでは、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

Webアプリのバージョンについては、これを試してください。

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

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

この文字列が一致しないことを確認するには: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だけにコードを変更します

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