我想要一個工具欄,其中鼠標移出/進入事件是從具有類container
的div檢測到的。 mouseover
和mouseout
事件按預期工作。當鼠標移入和移出元素並且它是後代時觸發這些事件。但是有一件不可預料的事情發生了:當鼠標移動到自己身上時,新創建的div將被移除,並且在移除後會觸發事件mouseover
,因此會創建另一個新的div。這使得它變得耀眼。任何遇到過這種問題的人都請幫助我。謝謝。當鼠標進入時動態創建元素。(意外觸發鼠標移出事件)
說你有這樣的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;
}
嗨,朋友,你沒有得到我說的。請嘗試在新創建的div上移動鼠標。謝謝。 – 2013-03-25 13:59:07