• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ボタンを押すと開閉するメニュー)

ボタンを押すと開閉するメニュー

このQ&Aのポイント
  • ボタンを押すと開閉するメニューについての質問です。
  • 以前、こちらでロールオーバーでのメニュー開閉を教えていただいたのですが、さらにクリックすると出てきたメニューが固定されるようにしたいです。
  • jQueryを使用してメガメニューを記述しましたが、検索してもうまくいかず困っています。どうかお助けください。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

こんにちは。 >さらにクリックすると出てきたメニューが固定されるようにしたいです。 他の要素にホバーしたときは、固定がキャンセルされるのか、そのまま固定されたままなのか…? 方法としては、クリックされたことを記憶しておいて、その情報を基に判断するようにしてあげればよろしいかと。 とりあえず、前者と仮定して、以下にサンプルを。 クリックされたら、リスト要素に"clicked"のクラスを設定するようにしています。 サンプルでは、2回クリックするとキャンセルされるように、勝手にしていますが、 この動作が不要な場合は、toggleClassのところをaddClassにすればよろしいかと。 (全角空白は半角に) $(function(){  var tli=$("ul#mm-ul > li.mm-li");  var tdi=$("div.mm-div",tli);  tli.hover(function(){   if(!$(this).hasClass("clicked")){    tli.removeClass("clicked");    tdi.hide();    $(this).children("div.mm-div").fadeIn("fast");   }  },  function(){   if(!$(this).hasClass("clicked")) tdi.hide();  });  tli.click(function(){   $(this).toggleClass("clicked");  }); });

hanadori22
質問者

お礼

今回もご回答くださってありがとうございます! お礼が遅くなってしまい申し訳ありません。 凄く助かりました! お礼のお言葉しかできないのが本当に申し訳ないです…。 本当にありがとうございます!!!!