关于hover事件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于hover事件相关的知识,希望对你有一定的参考价值。

使用jq的hover事件,我有一个div设置的display:none;是应该隐藏的,但是在加载的时候鼠标放在该div上,会出现不默认隐藏的情况,求指教
<ul id="nav_ul" class="coprize-clearfix">
<li> <div class="nav_relative"><a>第一<span></span></a>
<ul class="nav_absolute hide">
<li><a>111</a></li>
<li><a>222</a></li>
</ul>
</div>
</li>
<li>
</ul>
$('#nav_ul>li').hover(function ()
$(this).find('.nav_absolute').stop(true, false).slideToggle(200);
$(this).toggleClass("head-e5");
);

鼠标放到 li上面 执行了hover 事件, .nav_absolute 就显示了追问

现在就是想,鼠标直接放在li上面,然后刷新,li不会被显示出来,鼠标移出再移入就正常显示和隐藏

追答

把那个hover方法写在 页面加载完之后

追问

试过了,仍然是老样子

参考技术A 把代码贴出来看看,,这样很难判断出什么问题追问

重新贴了一下代码,帮我看看,现在就是想,鼠标直接放在li上面,然后刷新,li不会被显示出来,鼠标移出再移入就正常显示和隐藏

追答

看代码没什么问题,但是问题应该是出在slideToggle方法上。如果你引用的是1.4.2版本以后的jquery类库的话,slideToggle是不可以用了,已经被摒弃了,你如果使用了你刷新页面就会出现显示了然后自动缩回去。并不是hover方法的问题。

追问

有什么方法代替slideToggle方法吗?我想要效果和它一样

追答

能够替代的方法没有,但是你可以自己模拟一个,非常简单,效果你直接采用slideDown()和slideUp();当你鼠标上浮的时候用slideDown,鼠标移出的时候用slideUp就可以了,写了个小例子;你参考下吧

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript" src="jquery-1.9.1.min.js"></script>
    <style>
        .leve1 uldisplay:none;
        .leve1line-height:30px;border-bottom:1px solid #333;
    </style>
</head>
<body>
    <ul>
        <li  class="leve1">aaaaaaaaaaaaa
            <ul>
                <li>子类子类子类子类子类</li>
                <li>子类子类子类子类子类</li>
                <li>子类子类子类子类子类</li>
                <li>子类子类子类子类子类</li>
            </ul>
        </li>
        <li class="leve1">bbbbbbbbbbbb</li>
        <li class="leve1">cccccccccccc</li>
    </ul>
    <script type="text/javascript">
        $(function () 
            $(".leve1").hover(function () 
                $(this).find("ul").slideDown();
            ,function () 
                $(this).find("ul").slideUp();
            )
        )
    </script>
</body>
</html>

追问

昨天问完你后我就找到了答案,刚刚才看到你的,跟你写的方式差不多,谢谢了

本回答被提问者采纳

jquery hover事件

一样涉及的是鼠标的事件,作为人机交互的主要途径,那么鼠标的一入一出也是我们关注的重点,那么此函数就是这个作用。

 $("td").hover(
  function () {
    $(this).addClass("hover");
  },
  function () {
    $(this).removeClass("hover");
  }
);







以上是关于关于hover事件的主要内容,如果未能解决你的问题,请参考以下文章

jquery hover事件只触发一次动画

jquery hover事件只触发一次动画

CSS 最简洁hover事件的淡入淡出写法,且不占文档流位置!

css关于hover显示问题

关于:hover的一点小问题

关于ios上点击事件触发经过导致layui nav跳转的bug