2017-01-19 8 views
0

私は現在、このスクリプトを使用して、自分のサイトにアクセスしているユーザーの画面幅が800より小さいかどうかを確認しています。私の問題は、ユーザーが画面の幅を800よりも小さく調整すると、どのように表示されますか。screen.widthウィンドウのサイズを確認していません

現時点ではスクリプトは、最大画面幅が例えば800

よりも低いとき、私はこのメッセージをご希望の警告を表示し、ユーザーが1000発言の幅を有しているが、その後彼らのブラウザを縮小したときにトリガ720

if (screen.width <= 800) { 
    window.alert("screen smaller than 800"); 
    } 
+1

常に最初にGoogleに覚えて、今後の参考のためにあなたのスクリプト – empiric

+3

で 'resize'イベントをリッスンします:'のクエリをscreen.widthはウィンドウのサイズを確認しません.'は、あなたに必要なものすべてを与えてくれます。ちょうどFYI。 –

+0

また、この幅のチェックが必要な場合は、UIを修正してからCSSのメディアクエリを使用する方がはるかに良い解決策になります。 –

答えて

1

に幅あなたが必要:いいえ、

window.addEventListener('resize', function() { 
    if (window.innerWidth <= 800) { 
    window.alert("screen smaller than 800"); 
    } 
}, true); 
+2

@LewisDayリスナーを上書きしないように、 'addEventListener'を使うのが好ましい方法です。モニターを回転させない限り、' screen.width'は変更されません:p –

+0

@Juan Mendes True、私は同意します – aimadnet

2

resize eventで包み、あなたはwindow's widthを取得する必要がありますscreen's width

window.addEventListener("resize", function() { 
    if (window.innerWidth <= 800) { 
     window.alert("screen smaller than 800"); 
    } 
}) 
1

トンあなたはリサイズ機能でこれをDODことができます。

var width = $(window).width(); 

$(window).resize(function(){ 
    if ($(this).width() <= 800) { 
    window.alert("screen smaller than 800"); 
    } 
}); 
関連する問題