하늘색 사각형이 있습니다. 마우스가 하늘색 사각형 안쪽으로 움직이면 작은 사각형이 마우스와 함께 움직입니다. 마우스가 영역을 벗어나면 작은 사각형이 사라지지만 가끔씩 계속 나타납니다.왜 mouseleave에서 mousemove의 오버레이가 사라지지 않습니까?
나는 코드에 아무것도 표시되지 않습니다. 아무도 왜 이것이 일어나고 있는지 말해 줄 수 있습니까?
$(function() {
$("#div1").on("mousemove", function(e) {
$("#div2").css({
"display": "inline",
"left": e.clientX,
"top": e.clientY
});
})
$("#div1").on("mouseleave", function() {
$("#div2").hide();
})
})
#div1 {
background-color: skyblue;
width: 200px;
height: 100px
}
#div2 {
background-color: white;
width: 35px;
height: 15px;
border: 1px solid black;
display: none;
position: fixed;
}
#div2 p {
font-size: 12px;
margin: 0px 2px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1">
<div id="div2">
<p>mouse</p>
</div>
</div>
...하지만 당신은 아마 ..., 음, 마우스를 이동할 때 활성 유지 "mouseenter"가 아니라 "MouseMove 이벤트"를 사용해야합니다. –
@HansMeiser 마우스가 움직일 때'# div2 '가 움직이기 때문에 고의적입니다. –