Jquery选择器 - 影响同一DOM元素内的元素

时间:2015-06-09 07:29:39

标签: javascript jquery html event-handling

我的CMS生成菜单作为列表,没有任何ID和类。对于子菜单,有嵌套列表。

我制作了用于扩展子菜单的jquery脚本:

$(function () {
    $(".wrapper ul li").click(function () {
        if ($(this).has("ul").length) {
            $("a", this).removeAttr('href');
            $("ul", this).slideToggle();
        }
    });
});

我的问题是,此脚本会对单击整个li区域作出反应,我希望它对点击li内的链接作出反应。当然,我只需添加" a"选择制作它" .wrapper ul li a"但是如果ul嵌套在li内,条件检查呢?和slidetoggle选择器。我应该如何改变这些?

1 个答案:

答案 0 :(得分:0)

这可能只需对原始代码进行最少的修改即可。

$(function () {
    $(".wrapper ul li a").click(function ()
        {
            this = $(this).parent();
            if ($(this).has("ul").length) {
                $("a", this).removeAttr('href');
                $("ul", this).slideToggle();
            }
        }
    );
});

测试并查看它是否有效。我没有测试过。干杯