2017-11-16 12 views
1

ブラウザが768px未満の場合は、メインナビゲーションメニューを非表示にする必要があります。 関数はサイズ変更時にトリガします。しかし、ナビゲーションメニューは784pxに隠れる。 は、ここでは、コードです:サイズ変更機能が正常に動作しない

jQuery(window).resize(function(){ 
    var windowSize = jQuery(window).width(); 
    if(jQuery("#main-navigation").css('display') == 'none' && windowSize > 768) { 
     jQuery("nav#main-navigation").css("display", "block"); 
    } 
    if(windowSize < 768) { 
     jQuery("nav#main-navigation").css("display", "none"); 
    } 

}); 
+1

jsコードの代わりにmedeiaクエリを使用しないのはなぜですか?次のようなものがあります: '@media(最大幅:767ピクセル){#メインナビゲーション{ディスプレイ:なし;}}' – Hanif

+0

いいえ。このサイトの別の機能のために、このonresizeは誰も表示されていないonresize ... – silvachathura

答えて

2

あなたはスクロールバーを持っているためです。 $(window).widht()はあなたにスクロールバーのないwidhtを返します。スクロール幅の幅を使用する場合は、window.innerWidth

+0

素晴らしいですが、私の知識のために私もなぜgoogleを知らないjquery APIウィジェットを表示していない知ってほしい()。 innerWidthが表示されています... – silvachathura

+0

https://github.com/eddiemachado-zz/bones/issues/468#issuecomment-23626238 –

+0

$(ウィンドウ).widht()は正しい用語です。.... innerWidth worked .. thnxx – silvachathura

関連する問題