在InnerHtml更改后,Mouseout无法正常工作

时间:2011-10-18 22:11:35

标签: javascript jquery html

有人可以向我解释原因吗

$(document).ready(function(){   
   $("#fitness").mouseenter(function() {
  $("#fitness .cont").html(jQuery('#fitness_content').html());  
}).mouseleave(function(){
  $("#fitness .cont").html(jQuery('#fitness_img').html());
  }) 
});

无效。 mouseout或mouseleave事件似乎没有被捕获。它与DIV的大小有关吗?我尝试使用live和bind,但它也没有用。唯一可行的情况是我直接使用attr方法更新img src。但是我希望能够将图像包装在某些DIV中。请看http://jsfiddle.net/donysukardi/CnWku/。非常感谢任何帮助!我

1 个答案:

答案 0 :(得分:0)

因为.cont元素内的所有元素都是绝对定位的。这使得实际容器的高度为零,因此没有什么可以捕获事件..

如果你给容器边框,你会看到我的意思..

删除所有元素的绝对位置,除了容器似乎可以解决问题..

演示http://jsfiddle.net/CnWku/2/