以下はメニューを表示します:
<a href="#" id="cityclick">ONZE WAARDEN</a>
<div id="citydrop">
<div class="dropbottom">
<div class="dropmid">
<ul>
<li><a href="#">FAQ</a>
</li>
<li><a href="#">ITC</a>
</li>
<li><a href="#">CLUB</a>
</li>
<li><a href="#">CULTUUR</a>
</li>
<li><a href="#">ROBITICA</a>
</li>
</ul>
</div>
</div>
</div>
のjQueryは次のとおりです。
$("#citydrop").hide();
$("#cityclick").mouseover(function () {
$("#citydrop").slideDown('slow');
});
$("#citydrop").mouseleave(function () {
$("#citydrop").slideUp('slow');
});
問題:マウスが「cityclick」を離れても「citydrop」に入らないときに、サブメニューの「citydrop」を切り替える方法がわかりませんまだ。
ここで試してみた jsfiddle
HTMLでラッパーを使用してから、次のようにmouseleave
イベントを呼び出します。 http://jsfiddle.net/9yEHV/11/
$("#wrapper").mouseleave(function () {
$("#citydrop").slideUp('slow');
});
そしてラッパー:
<div id="wrapper">
<a href="#" id="cityclick" >ONZE WAARDEN</a>
<!-- rest of your code -->
</div>
これはあなたがやろうとしていることですか?
HTML
<ul>
<li class="main-menu">
ONZE WAARDEN
<ul class="sub-menu" style="display: none;">
<li><a href="#">FAQ</a></li>
<li><a href="#">ITC</a></li>
<li><a href="#">CLUB</a></li>
<li><a href="#">CULTUUR</a></li>
<li><a href="#">ROBITICA</a></li>
</ul>
</li>
</ul>
Javascript
$('.main-menu').mouseenter(function(){
$(this).find('.sub-menu').slideDown();
});
$('.main-menu').mouseleave(function(){
$(this).find('.sub-menu').slideUp();
});
ホバープラグインには、mouseenterとmouseleaveの両方が含まれています。次のコードは私にとっては問題なく機能します
javascript:
$(document).ready(function(){
$('.dropdown').hover(
function(){
$(this).children('.dropdown-menu.pricing-drop').slideDown('fast');
},
function () {
$(this).children('.dropdown-menu.pricing-drop').slideUp('fast');
});
});
$(document).ready(function () {
$('#Dropdown').mouseover(function () {
$(this).slideDown();
});
});
$(document).ready(function () {
$('#Dropdown').mouseleave(function () {
$(this).slideup();
});
});
これが役立つと思います。