-1

ドロップダウン メニューを作成するために、slideToggle() 関数を使用しています。

私のバックボーンコードは次のとおりです。

events: {
     "mouseover .dropdownColl"  :   "toggleColl"
},
toggleColl: function(e) {
    $('.dropdownAbout .sub_navigation').stop(true, true).slideUp('fast'); 
},
...

およびhtmlコード:

<li class="dropdownColl">
   <a>menu</a>
   <ul class="sub_navigation">
      <li><a href="#">voice 1</a></li>
      <li><a href="">voice 2</a></li>
      <li><a href="">voice 3</a></li>
      <li><a href="">voice 4</a></li>
      <li><a href="">voice 5</a></li>
   </ul>
</li>

私には2つの問題があります.1つ目は、マウスがli.dropdownCollの上にあるとき、sub_navigationのslideToggleが機能しますが、マウスがaタグの上にあるとき、sub_navigationがslideDownを作成する..そして理由がわかりません。次に、slideToggle を作成し、マウスを ul.subnavigation > li に移動すると、ul がもう一度 slideDown を作成します。通常の HTML ページで作成しようとすると問題なく動作しますが、バックボーンでは問題が発生します!!

4

1 に答える 1

0

javascriptでのイベントの伝播と委任とバブリングについて読む必要があります。この質問と回答は、イベントのバブリングとキャプチャとは何かを開始する場所になる可能性があります

于 2012-11-13T17:11:05.950 に答える