我想与.myClass跨度标签的点击,和它的所有后代,做一些事情..选择所有节点下降与jQuery
$('.myClass'). *<all elements below .myClass>*.click(function(){
//do something
});
我如何选择.myClass选择下的所有元素?不仅是孩子,还有他们下面的每个节点。
林在IE7
我想与.myClass跨度标签的点击,和它的所有后代,做一些事情..选择所有节点下降与jQuery
$('.myClass'). *<all elements below .myClass>*.click(function(){
//do something
});
我如何选择.myClass选择下的所有元素?不仅是孩子,还有他们下面的每个节点。
林在IE7
的点击默认会bubble up to the parents,所以你只需要:
$('.myClass').click(function(){
//do something
});
如果你真的需要的所有元素,使用$('.myClass *')
,但通常你想从这个远离,事件冒泡效率更高,并且默认情况下发生。如果你需要的目标,看到它从使用event.target
来到其实际的孩子,像这样:
$('.myClass').click(function(e){
var clickedDOMElement = e.target;
//do something
});
事实上,对不起,没有这一点,你想要做什么之间的差异 - 这不会听的.myClass本身,仅* *孩子的单击事件。 – Andrew 2010-09-28 10:20:06
正如我在上面的答案中所说的......你几乎想要在几乎所有场景中都做到这一点,图片为$('body')。find('*')。click(.. ),它是知道有多少事件处理程序的绑定者,不是解决问题的好方法。 – 2010-09-28 10:21:27