jquery - 延迟 css:鼠标悬停时的悬停状态
问题描述
我有一个 2 级下拉菜单,鼠标必须在非常狭窄的走廊上移动才能保持菜单打开,如果它偏离轨道,菜单会意外关闭,这令人沮丧。我想让菜单不立即关闭,而是延迟关闭。
它是一个标准菜单,使用 CSS 制作,例如 tis:
ul.menu li ul {
display: none;
}
ul.menu li:hover ul {
display:block;
}
我需要当不再处于悬停状态时,菜单仍然可见至少 0.5 秒。
已经尝试过了,但它不起作用:
<script>
$( ".menu li" ).mouseout(function() {
$(".menu li ul").css("display: block");
$(".menu li ul").css.setTimeout("display: none", 2000);
});
</script>
解决方案
您可以对位使用带有延迟的转换,以使其在悬停时保持可见:
.nested {
pointer-events:none; /* this is so it behaves like display none and mouse does not interact with child when hidden */
opacity: 0;
transition: opacity 0.1s; /* change length to longer for a nicer fade */
transition-delay: 1s; /* fadeout won't happen for a second */
}
.hover:hover .nested {
pointer-events: auto;
opacity: 1;
transition: opacity 0.1s; /* fade in when hovered */
transition-delay: 0s; /* fade in immediately */
}
<div class="hover">
hover
<div class="nested">
nested
</div>
</div>
在上面,您ul
将是.nested
并且您的父母li
将是.hover
推荐阅读
- javascript - 单击时在 div 中增加数字
- java - 如何水平打印出索引和数组编号?
- c++ - 适用于 Windows 的 Quicktime 7 API - couldNotResolveDataRef
- r - 如果我在 R 中使用 5 k-fold,模型训练多少次?
- c - 无法在 gtk3 的滚动窗口内绘制
- c - 计算矩阵转置时出现访问冲突写入位置错误
- c - getaddrinfo 挂起,但不确定如何使用 getaddrinfo_a 正确轮询
- postgresql - 在 Postgres 中,如何在更改表后重新验证(“类型检查”)函数和过程?
- typescript - NextJS TypeScript getStaticProps 打字
- javascript - 如何在规划模型 API 中使用 createMembers 方法?