2013-08-21 31 views
1

我有以下的jQuery代码:我怎样才能访问父在jQuery的选择上

$('#temp_modals').on('mouseleave','*[data-username]',function() { 
    ///my logic 
}); 

不过,我需要有*[data-username]的父DIV MouseLeave事件

由于此元素动态添加到网页,因此我无法使用普通的选择器并需要使用$ .on。

总之我想实现这样的代码运行。

$('#temp_modals').on('mouseleave','*[data-username]'.parent(),function() { 
    ///my logic 
}); 

我该怎么做?

回答

4

尝试

$('#temp_modals').on('mouseleave','*:has(> [data-username])',function(event) { 
    ///my logic 
    // this should get you the parent. 
    $(event.target).parent(); 
}); 

演示:Fiddle

0

根据规范这应该工作

http://api.jquery.com/parent-selector/

$('#temp_modals').on('mouseleave','*[data-username]:parent',function() { 
    ///my logic 
}); 

编辑:实际上,这是行不通的,谢谢指点它出来,:父母没有做我所期望的。这将工作:

$('#temp_modals').on('mouseleave',$('*[data-username]').parent(),function() { 
    console.log(this) 
}); 
+0

不工作http://jsfiddle.net/arunpjohny/Pn9w6/3/ –

+0

根据规格,':parent'选择谁做有子元素 – collapsar