我想選擇#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> *'。 –
你是絕對正確的,克林先生。我相應地更新了我的答案。 –