2011-02-15 115 views
0

我正在使用jquery 1.3.2库。和(jQuery的1.8.7 js和css)jquery live点击问题

现在,

$("div > ul[id=color] > li ").live("mouseover", function() {  
    alert($(this).html()); 
}); 

工作,但

$("div > ul[id=color] > li ").live("click", function() { 
    alert($(this).html()); 
}); 

不工作。请告诉可能的原因是什么?谢谢

+2

对我的作品。 http://jsfiddle.net/2Mkjk/2/ – user113716 2011-02-15 05:30:09

回答

4

后裔或anscestor元素可能有onclick处理程序返回false或调用event.stopPropagation()。由于.live()依赖于事件一直移动到文档级别,所以如果事件在元素树的任何位置都被阻塞,那么您的处理程序将不会被调用。


旁注:ID是唯一的,并且jQuery has a shortcut for them,因此您的选择可以简化为:

"#color > li" 
+0

谢谢你的确切原因......再次感谢。 – 001priyank 2011-02-15 05:43:48