如下一段HTML
<div style="width:300px; height:300px; background:green;">
<p style="width:100px; height:100px; background:red"></p>
</div>
<strong></strong>
如下一段js
$(function(){
$('div').mouseover(function(){
$('strong').html(function(index, value){
return value + 1;
});
});
});
鼠標從外面移入 div時,觸發mouseover事件,使strong內容加1,然後移動到p時,居然也加了1;從外面移入p時,也加了1。這是為什麼?
p不是在div內部嗎,而且我綁定的元素是div,就算鼠標移入了p,怎麼可能重新觸發了div的mouseover事件?不是一直都在div裡面嗎?
mouseenter移動進去觸發一次,移動到子對象後,再移動到此對象不會觸發,
mouseover移動到對象上就會觸發,不管是否從子對象移動的
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<div id="dv">父div
<div>子div</div>
</div>
<div id='dvlog'></div>
<script>
$('#dv').mouseenter(function(){$('#dvlog').append('enter<br/>')}).mouseover(function(){$('#dvlog').append('over<br/>')})
</script>