if文でよく使う命令文。返り値trueとfalseで条件分岐
if文でよく使う命令文。
以下の記述は基本だし、よく使うので覚えておこう。
流れだけでいうとこんな感じ・・・↓
条件分岐、ifの(返り値)にtrueとfalseを与え、
trueならば命令Aを実行。
falseならば命令Bを実行。
これをonクリックイベントと組み合わせると、
クリックしたら、クラスを追加したり、それをanimateさせたりと
いろい便利。
以下は
ヘッダーのハンバーガーメニューボタンの動きの場合の例。
ハンバーガーをクリックすると、メニューが現れる、的なやつ。
たとえば
.hamburger-btnのボタンがあるとして・・・
.header_nav_dropdownのメニューがあるとして(display:hiddenしてある)
<script>
$(document).ready(function(){
  var flag = false; //あらかじめfalseをわたしておく
  $(".hamburger-btn”).on("click",function(){
      if (!flag) { //条件、flagがtrueでなければ・・・つまりfalseならば
      // メニューを表示させる
        $(".header_nav_dropdown").fadeIn(function() {
            flag = true; //fadeInを実行したら、flagにtrueをわたしておく。すると、次、ボタン押すとtrueの場合の処理となる
        });
      } else { //その他場合、つまりtrueならば
      // メニューを非表示にする
        $(".header_nav_dropdown").fadeOut(function() {
            flag = false; //fadeOutを実行したら、flagにfalseをわたしておく。すると、次、ボタン押すとfalseの場合の処理となる
        });
      }
  });
});
</script>
スマホ対応で、メニュー表示の時、スクロールできないようにした時とか、重宝する。
<script>
$(document).ready(function(){
var flag = false;
$(“.sp_hamburger-btn").on("click",function(){
if (!flag) {
// スクロール禁止の命令
$(window).on('touchmove.noScroll', function(e) {
e.preventDefault();
});
// メニューを表示
$(".sp_header_nav_dropdown").fadeIn(function() {
flag = true;
});
} else {
// スクロール禁止の命令解除
$(window).off('.noScroll');
// メニューを非表示
$(".sp_header_nav_dropdown").fadeOut(function() {
flag = false;
});
}
});
});
</script>
      


