ナビゲーションの表示方法を画面幅により変更させたいと思っています。
●PCの場合は、マウスオーバーでナビゲーションが表示される
●タブレット・スマホの場合は、クリックで表示される
PCの場合はcssで設定し、タブレット・スマホの場合はjQueryのslideToggleを使っています。
タブレット・スマホの場合には画面サイズを判定し、当てはまる場合に、slideToggleが実行されるよう設定しました。
jQuery(function($){ var $win = $(window); $win.on('load resize', function() { var windowWidth = window.innerWidth; if (windowWidth <= 800) { $(".navicon").on("click", function() { $(".navBox").slideToggle(); $(this).toggleClass("active"); }); } }); });
上記のように記述したのですが、クリックする度、slideToggleが何度も開閉を繰り返してしまいます。
resizeが作用しているようなのですが、記述をどのように変更したら良いでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/16 10:18
2016/12/16 10:24
2016/12/16 10:30
2016/12/16 10:38
2016/12/16 10:47
2016/12/16 10:50
2016/12/16 11:12