我想选择#one,#two和#two的兄弟。我有什么更优雅的解决方案吗?结合jquery选择器
$('#one, #two').click(function(e){
e.stopPropagation();
});
$('#two').siblings().click(function(e){
e.stopPropagation();
});
我想选择#one,#two和#two的兄弟。我有什么更优雅的解决方案吗?结合jquery选择器
$('#one, #two').click(function(e){
e.stopPropagation();
});
$('#two').siblings().click(function(e){
e.stopPropagation();
});
$("#one, #parentIdOfTwo > *").click(function(e) {
e.stopPropagation();
});
也快得多。
试试这个。看看我正在使用andSelf
,它将堆栈中的前一组元素添加到当前集合,这对您的情况非常有帮助。
$('#one').add($('#two').siblings().andSelf()).click(function(e){
e.stopPropagation();
});
喜欢我的解决方案:)我也想过'andSelf'功能,但没有成功 –
单挑 - 代码示例中有一个小错字:它应该是'andSelf',而不是'addSelf'。 –
@MathiasBynens - 感谢您在使用dv之前告诉我:P – ShankarSangoli
$('#one, #two').add($('#two').siblings()).click(function(e){
e.stopPropagation();
});
你可以使用:
$('#one, #two').add($('#two').siblings()).click(function(event) {
event.stopPropagation();
});
...或:
$('#one').add($('#two').parent().children()).click(function(event) {
event.stopPropagation();
});
感谢您!这看起来非常优雅,而且很有用! –
请注意,这不等同于OP代码。它还会将事件处理程序添加到'#parentIdOfTwo'的所有后代。更好的是'#parentIdOfTwo> *'。 –
你是绝对正确的,克林先生。我相应地更新了我的答案。 –