Jquery “制作幻灯片”下拉菜单也可以制作幻灯片

Jquery “制作幻灯片”下拉菜单也可以制作幻灯片,jquery,drop-down-menu,Jquery,Drop Down Menu,因此,我尝试创建一个向下滑动菜单,其中父项与该项一起向下滑动。我想做这件事的唯一方法是让主菜单项在底部,子菜单项在顶部。这不是首选,但似乎有效 现在的问题是,如果您将鼠标移到菜单的错误部分,菜单似乎会跳动/不平滑。有没有办法把主菜单项放在最上面,让它不那么紧张 A在这里 以下是HTML: <ul> <ul> <li> Menu 1 </li> <li> Menu 2 </li>

因此,我尝试创建一个向下滑动菜单,其中父项与该项一起向下滑动。我想做这件事的唯一方法是让主菜单项在底部,子菜单项在顶部。这不是首选,但似乎有效

现在的问题是,如果您将鼠标移到菜单的错误部分,菜单似乎会跳动/不平滑。有没有办法把主菜单项放在最上面,让它不那么紧张

A在这里

以下是HTML:

<ul>
    <ul>
        <li> Menu 1 </li>
        <li> Menu 2 </li>
    </ul>
        <li> Main Menu Item </li>
</ul>
<ul>
    <ul>
        <li> Menu 1 </li>
        <li> Menu 2 </li>
    </ul>
        <li> Main Menu Item 2 </li>
</ul>
最后是jQuery

$("ul").hover(

function() {
    $(this).find('ul li').stop(true, true).slideDown();
}, function() {
    $(this).find('ul li').stop(true, true).slideUp();
}

);
编辑

因此,问题之一似乎是标记无效。有人建议只使用Javascript将第一个li标记移动到部分的底部。我有一个例子,只适用于单击第一个li。该小提琴可以找到理想的我希望它没有点击和有效的标记工作

这里是更新的JS

    $("ul li:first").click(function() {

  $(this).parent().append($(this));

});

$("ul").hoverIntent(
function() {
    $(this).find('ul li').stop(true, true).slideDown();
}, function() {
     $(this).find('ul li').stop(true, true).slideUp();
}

);​
试试这个解决方案

HTML


看来胜利者是这个JavaScript

$("ul li:first-child").not("ul li li").hover(function() {

  $(this).parent().append($(this));

});   

$("ul").hoverIntent(
function() {
    $(this).find('ul li').stop(true, true).slideDown();
}, function() {
     $(this).find('ul li').stop(true, true).slideUp();
}

); 

您可以随时尝试hoverIntent插件:)
<nav id="verticalmenu">          
<ul>
  <li> 
      <ul class="down">
        <li><a href="#">Menu#1-1</a></li>
        <li><a href="#">Menu#1-2</a></li>
        <li><a href="#">Menu#1-3</a></li>
      </ul>
      <a class="slide" href="#">Menu#1</a>
  </li>
    <li>
       <ul class="down">
        <li><a href="#">Menu#2-1</a></li>
        <li><a href="#">Menu#2-2</a></li>
        <li><a href="#">Menu#2-3</a></li>
      </ul>
        <a class="slide" href="#">Menu#2</a>
    </li>
</ul>
  var nav = $("#verticalmenu");
    //add hovers to submenu parents
    nav.find("li").each(function() {
        var li_ul = $(this).find("ul");
            li_ul.hide();
            //show subnav on hover
            $(this).mouseenter(function() {
                li_ul.stop(true, true).slideDown();
            });
    });


    nav.find("li").each(function() {
        var li_ul = $(this).find("ul");
            li_ul.hide();
            //show subnav on hover
            $(this).mouseleave(function() {
                li_ul.stop(true, true).slideUp();
            });
    });
$("ul li:first-child").not("ul li li").hover(function() {

  $(this).parent().append($(this));

});   

$("ul").hoverIntent(
function() {
    $(this).find('ul li').stop(true, true).slideDown();
}, function() {
     $(this).find('ul li').stop(true, true).slideUp();
}

);