悬停菜单jquery上下滑动太快

时间:2014-10-12 20:39:08

标签: javascript php jquery html css

我做了这个悬停菜单但是有错误 这是我的jquery代码

  $("#right_side li").mouseenter(function(e) {

        $(this).children('ul').stop(true,true).slideDown();

    });
    $(this).stop();
    $("#right_side li").mouseleave(function(e) {
        $(this).children('ul').stop(true,true).slideUp();

    });

这是我的PHP代码

function menu($li)
{
   echo "<ul class='hovermenu'>";
        $result = mysqli_query($li, "SELECT * FROM `categories` WHERE 1") or die(mysqli_error($li));

    while ($Row = mysqli_fetch_array($result)) {
        echo "<li class='cat'><div class='cat_div' ><a href='index.php?cat=".$Row['catid']."'>"  . $Row['catname'] . "</a></div><ul class='sub'>";
                                $result2 = mysqli_query($li, "SELECT * FROM `brand` WHERE catid=".$Row['catid']."") or die(mysqli_error($li));
                    while ($Row2 = mysqli_fetch_array($result2)) {
                    echo "<li><a href='index.php?brand=".$Row2['id']."&cat=".$Row['catid']."'>"  . $Row2['name'] . "</a></li>";
                                        }
                echo"</ul></li>";
                }

echo "</ul>";
}

我的问题是 当我的老鼠 而且我的速度太快了 我的菜单上下滑动得太快了 请帮助meeeee !!!

4 个答案:

答案 0 :(得分:2)

为您的slideUp调用添加速度,例如&#34;慢&#34;

slideUp("slow")

您还可以使用以毫秒为单位的值。

答案 1 :(得分:1)

你可以简单地添加一个以毫秒为单位的时间,如slideUp(1000)或slideDown(300)或slideDown(“fast”)或slideUp(“slow”) 希望这会有所帮助。

答案 2 :(得分:0)

您是否可以将脚本更改为此脚本,如果问题已解决,请告诉我

$("#right_side li").on({
    mouseenter: function(){
        $(this).children('ul').stop().slideDown();
    },
    mouseleave: function(){
        $(this).children('ul').stop().slideUp();
    }
});

答案 3 :(得分:0)

当向上/向下滑动的元素没有设置高度时,jQuery slideUp / slideDown函数存在已知问题。确保要隐藏的元素具有指定的高度。

另外,min-height css属性会搞砸。从元素中删除最小高度。

参考:

https://forum.jquery.com/topic/slideup-slow-and-slidedown-slow-happening-instantly