禁用jQuery的儿童preventDefault

Han*_*ink 2 jquery

我有一个菜单ul(深度2).我希望父链接不可点击,所以我修复了这个:

$('li.parent a').click(function(e) {
    e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)

这也禁用了孩子的点击,我似乎找不到preventDefault的相反功能,如下所示:

$('li.parent a li a').click(function(e) {
    e.goAndEnjoyYourDefaultBehaviourYoungPadawan();
});
Run Code Online (Sandbox Code Playgroud)

这是否存在,还是有其他最佳做法?

注意:我无法编辑菜单,或将id添加到<a>'s或sommit.

Mat*_*att 5

您需要使用子选择器而不是后代:

$('li.parent > a').click(function(e) {
    e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)