クラスを持つdivからmouse-out/inイベントが検出されるツールバーが必要ですcontainer
。およびイベントは期待どおりに機能していますmouseover
。mouseout
これらのイベントは、マウスが要素とその子孫に出入りするときにトリガーされます。ただし、予期しないことが発生します。マウスを移動すると、新しく作成されたdivが削除され、削除された後、mouseover
イベントがトリガーされるため、別の新しいdivが作成されます。これによりDazzlingになります。この種の問題に遭遇したことがある人は、私を助けてください。ありがとう。
あなたがこのHTMLを持っているとしましょう:
<div id='parent' class="parent container">
<div id="child1" class="child container">
</div>
<div id="child2" class="child container">
</div>
</div>
そして、このJavaScript:
$(function() {
$('div.container').on('mouseover', function(e){
e.stopPropagation();
$(this).append("<div class='newdiv'></div>")
console.log("into " +$(this).attr('id'));
}).on('mouseout', function(e){
$(".newdiv",this).remove();
console.log("out from " + $(this).attr('id'));
})
});
CSSの場合:
.parent
{
border:1px solid black;
width:100%;
height:400px;
}
.child
{
float:left;
width:40%;
border:1px solid red;
margin:1px;
height:300px;
}
.newdiv{
border:1px solid blue;
margin:2px;
width:100px;
height:100px;
position:absolute;
right:0;
}