投稿日:

    カテゴリー 技術 / デザイン / 制作

    小文字じゃダメなようです。

    こんにちは
    あともう少しで新しいPCが届く前に
    会社のPCがお亡くなりになった伊藤です。
    みなさんバックアップは常日頃取っておきましょう!

    さて本題です。
    ブログに書くほどでもないのですが
    webページの振り分けについてハマったので自分用に書き留めます。
    振り分けは一般的にjavascript、もしくは.htaccess、phpなどで行います。

    今回僕はjavascriptで書きました。
    リダイレクトの条件は
    ・iPhoneでAndroidで見たらスマホサイト!
    ・iPad、Androidのタブレット端末で見たらPCサイトに飛ばす!

    javascriptで書くと大体下記のようになると思いますが、

    // iPhoneまたは、Androidの場合は振り分けを判断
    var ua = navigator.userAgent;
    if (ua.indexOf('iPhone') != -1 || ua.indexOf('iPod') != -1) {
     location.href = 'スマホサイトのURL'; //iPhone iPodはSPへ
    }
    if (ua.indexOf('Android') != -1) {
     if (ua.indexOf('mobile') != -1) {
    	location.href = 'スマホサイトのURL'; //Androidにmobileが付いてたらSPへ
     }else{
         //Androidにmobileが付いてなかったらPCへ
     }
    }
    

    この書き方で
    タブレットはAndroidで判別しAndroidのスマホの方はAndroidでmobileがあれば
    スマホサイトに飛ばすのですが、Androidのスマホのリダイレクトがうまくいきませんでした。
    リダイレクトせずPCページを見てしまいます・・・・。
    Chromeのデバックツールで見てもエラーも出ません。

    そうこう悩んでいる内にあることに気づきました。

    if (ua.indexOf('mobile') != -1) {
    

    そうです’mobile’が小文字なのです。

    頭文字が大文字の’Mobile’じゃないと振り分けされないのです。
    小文字でも大丈夫だろうと今まで思っていたのですが
    小文字はダメなようです。

    まだまだ修行が足りないようです。
    また一つ勉強になりました。

    ではでは。