2017-09-05 8 views
0

コード:このコードでナビゲーションメニューでマウスのホバーを10秒間表示する方法は?

<style> 
    .subnav-show { 
    display: block; 
} 
</style> 

<script> 
$(document).ready(function() {  
    $('.nav li').hover(
     function() { 
      $('ul', this).addClass('subnav-show').delay(2000).queue(function(){ 
      $(this).removeClass('subnav-show').dequeue(); 
     });    
    }); 
}); 
</script> 

<div class="navbar navbar-default navbar-static-top"> 
    <div class="container"> 
     <div class="navbar-header"> 
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> 
       <span class="n-bar"></span> 
       <span class="n-bar"></span> 
       <span class="n-bar"></span> 
      </button> 
      <a class="navbar-brand" href="#"><img src="logo.png" alt=""/></a> 
     </div> 
     <div class="navbar-collapse collapse "> 
      <ul class="nav navbar-nav"> 
       <li class="dropdown mega-dropdown"> 
        <a href="#" id="home" class="dropdown-toggle" data-toggle="dropdown" >home</a>    
        <ul class="dropdown-menu mega-dropdown-menu" id="div2"> 
         <li class="col-sm-3"> 
          <p>menu1</p> 
         </li> 
         <li class="col-sm-3"> 
          <p>menu2</p> 
         </li> 
         <li class="col-sm-3"> 
          <p>menu3</p> 
         </li> 
         <li class="col-sm-3"> 
          <p>menu4</p> 
         </li> 
        </ul>    
       </li> 
      </ul> 
     </div> 
    </div> 
</div> 

私は突然、メニューからメニュー非表示ダウン大きく低下し、マウスを削除すると、それはバーダウン大きなドロップを示し、ときに、メニュー上の私は、マウスオーバー、私は大規模なメニューナビゲーションバーを作成しています。今、私の質問は、メニュー上にマウスを重ねると10秒間大きなメニューバーを表示する方法です。メニューからマウスを削除すると、その後10秒間大きなメニューが表示されます。私を助けてください。

+3

は、あなたが何かを試してみましたか? –

+1

なぜPHPタグですか? – JustBaron

+0

':hover'ルールがナビゲーションバーに適用され、ドロップダウンメニューが表示され、ドロップダウンメニューにも適用されますか?そうでない場合、このドロップダウンメニューは、離れた場所に移動するとすぐに非表示になります。しかし、 ':hover'ルールがドロップダウンメニューにも適用されている場合、ナビゲーションバーとドロップダウンメニューの上にホバーすると、そのルールは表示されたままです。提案:あなたのCSSを含める – UncaughtTypeError

答えて

0

ありがとうございました、これを試してみてください:

https://www.bootply.com/64081

jQuery('ul.nav li.dropdown').hover(function() { 
    jQuery(this).find('.dropdown-menu').stop(true, true).delay(100).fadeIn(); 
}, function() { 
    jQuery(this).find('.dropdown-menu').stop(true, true).delay(1000).fadeOut(); 
}); 
+0

しかし、これは助けにはならない、彼は特定の事にカーソルを置くと、ホバーをアクティブに保つ方法を求めています。これは彼が期待している答えとは非常に異なっています。 –

+0

あなたは正しいです!私の答えを編集すると、この例では問題が解決されます。 –

+0

jqueryを使うつもりならば、 '$(" ul.nav li.dropdown ")'というものと一緒に使ってください。この方法では2つのツールを混ぜることはなく、もっとjqueryを学ぶことに興味があるかもしれません –

関連する問題