防止子元素悬停破坏父悬停

系统怪胎

因此,假设我有一个具有img子元素的父div元素,并且想在父元素悬停时执行一些代码。

<div class="parent">
    <img src="link_to_some_image" />
</div>

这里的问题是,当子img悬停时,父“悬停状态”会中断。我如何做到这一点,即使父元素的子元素悬停了,父母也保持其悬停状态?

这是一个jsfiddle示例,请尝试将鼠标悬停在空白处,然后在图像上悬停http://jsfiddle.net/omrf0dxe/

非常感谢!

编辑:img子代是一个示例,它可能是其他类型的元素,例如div,链接等

Edit2:好的,显然解决方案是在绑定“退出”事件时使用mouseleave代替mouseout。

乔什·克罗齐耶(Josh Crozier)

您正在收听事件mouseenter/ mouseout

您想要事件mouseenter/ mouseleave

这里的例子

$(".parent").on("mouseenter mouseleave", function () {
   $(this).toggleClass('hovered'); 
});

或者,您也可以添加pointer-events: none到子img元素,以从元素上实质上删除鼠标事件:

更新示例

.parent > img {
    pointer-events: none;
}

但是,根据您要实现的目标,甚至可能不需要JS。

只需使用:hover伪类。

这里的例子

.parent {
    width:400px;
    height:400px;
    background:blue;
}

.parent:hover {
    background:red;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

子元素悬停,效果父

来自分类Dev

悬停子元素时保持父元素的悬停状态

来自分类Dev

悬停子元素时是否可以取消父悬停样式?

来自分类Dev

悬停父元素时触发子元素的过渡

来自分类Dev

悬停子元素时更改父元素的背景

来自分类Dev

在父元素上停止CSS悬停/悬停

来自分类Dev

在CSS中的父悬停上显示子元素

来自分类Dev

在子元素上时如何保持父对象的悬停状态?

来自分类Dev

在父悬停时更改子元素的CSS类

来自分类Dev

jQuery悬停在子元素上以更改父CSS

来自分类Dev

CSS 在父悬停时更改子元素字体颜色

来自分类Dev

在子链接上悬停时,父悬停状态会更改

来自分类Dev

悬停子菜单时悬停父菜单项

来自分类Dev

父悬停部分更改,元素悬停全部更改

来自分类Dev

父悬停部分更改,元素悬停全部更改

来自分类Dev

将鼠标悬停在子元素上,而不在父元素上

来自分类Dev

如何鼠标悬停父元素,然后单击使用Selenium和Action类的子元素

来自分类Dev

将鼠标悬停在子元素上,在父元素上更改CSS?

来自分类Dev

CSS:子元素不会在父元素上触发悬停

来自分类Dev

悬停子<ul> <li>元素时,更改父<ul> <li>元素的样式

来自分类Dev

如何在父元素悬停时更改子元素的不透明度

来自分类Dev

更改父悬停时的子动画/过渡

来自分类Dev

悬停父元素时更改跨度背景

来自分类Dev

父元素的CSS Sprite悬停状态

来自分类Dev

仅在父元素中应用悬停

来自分类Dev

旋转父悬停时的跨度元素边框

来自分类Dev

父元素未填充悬停状态

来自分类Dev

悬停孩子时更改父元素的行为

来自分类Dev

当父项悬停时启用输入元素

Related 相关文章

热门标签

归档