仅检测父元素的onMouseOut

时间:2019-08-21 07:14:45

标签: javascript

我有一个<img>包裹着<div>,在悬停状态下,我需要在图像上显示元素(<TagsDropdown />)并在{{1 }}。

isHoveing=false

我能够正确显示该元素,但是我不知道如何隐藏它, 当用户将鼠标悬停在该元素上时,由于该元素与该图像不同,因此被检测为 <div> <img className={classes.img} src={photo.src} onMouseOver={onMouseOver} onMouseOut={onMouseOut} /> <div className={classes.tagContainer}> <Tag tag={tag} key={tag} /> {isHovering && ( <TagsDropdown /> )} </div> </div>

onMouseOut

我尝试使用 const onMouseOver = e => { setIsHovering(true) } const onMouseOut = e => { if (e.relatedTarget && e.relatedTarget.tagName == 'IMG') { setIsHovering(false) return } } e.relatedTarget.tagName,但是第一个始终是e.target.tagName,第二个返回div

1 个答案:

答案 0 :(得分:0)

使用平稳CSS和:hover选择器不能做到这一点吗?我在包装div上使用:hover-并在:hover上显示:none / block。

您可能需要单独放置显示器,并使用位置或其他样式进行显示-不需要使用JS来确定悬停状态以及元素的相关可见性/位置。

Sub Contar2()
    For CONTADOR2 = 2 To 10 Step 2
        Dim fila As Integer
        fila = 1
        fila = fila + 1
        Application.ActiveSheet.Cells(fila, 5) = CONTADOR
    Next
End Sub