web-dev-qa-db-ja.com

jqueryを使用して画面の幅を決定する

このスクリプトをiphone 6で適切に実行するのに問題があります。「モバイルではない」と表示され続けます。何が欠けていますか?

$(document).ready(function(){
    if ($(window).width < 700){
        alert("mobile");
    }
    else {
        alert("not mobile");
    }
});

編集:謝罪、ここに入力したコードにはタイプミスがありましたが、私の問題の原因ではありませんでした。 iPhoneの解像度に関する情報が不正確でした。みんな、ありがとう!

12
dsol828

IPhone 6のディスプレイの解像度は1334x750です。 chrome dev toolsでiPhone6をエミュレートすると、幅は_980_として報告されます(これが正確かどうかはわかりません)。

あなたはこれに興味があるかもしれません: http://detectmobilebrowsers.com/

また、他の人が指摘したように、$(window).width$(window).width()に置き換えます

14
ekuusela

まあ、画面解像度について ekuuselaが言ったこと を無視すると、widthの後のかっこを忘れたようです。これはフィールドではなくメソッドです。これを修正するには、その後に_()_を追加します。

_if ($(window).width() < 700)
_

詳細は width() のドキュメントを参照してください。

8
Nic Hartley

iPhone6の画面は1334x750ピクセルです。幅のみを使用してモバイルユーザーを検出する場合は、代わりに this を参照してください。

3
Sami

JQueryは$(window).width()を使用します。プロパティではなく関数です。

1
ScottMichaud

このスレッドは、JavaScriptとJQueryの両方のオプションについて詳しく説明しています

画面、現在のWebページ、ブラウザウィンドウのサイズを取得

0
MaxRocket

_.width_だけでなく、.width()も必要です。また、それをログに記録し、それが期待どおりであることを確認してください。

0
Bill Criswell