我如何在此代码中添加单击功能

时间:2013-09-18 13:55:11

标签: jquery function

如何在此代码中添加点击功能,以便除了打开子菜单还调用过滤器链接重要?

$('#dl-menu a').ready(function(e) {
    var selector = $(this).attr('data-filter');
    $container.isotope({ filter: selector });
    e.preventDefault();
    e.stopPropagation();
});


$('.dl-submenu a').click(function(e) {
    var selector = $(this).attr('data-filter');
    $container.isotope({ filter: selector });

    e.preventDefault();
    e.stopPropagation();

});

2 个答案:

答案 0 :(得分:0)

您的问题(基于问题中的当前信息)可能是由于在第一个实例中使用了ID而在第二个实例中使用了一个类。

$('#dl-menu a').ready(function(e) {

$('.dl-submenu a').click(function(e) {

请注意,第一项是#dl,第二项是.dl,更正哪个错误,可能会解决您的问题。

答案 1 :(得分:0)

我要去这里的一个分店......

您点击了菜单id =“dl-menu a”,您希望在显示子菜单的同时应用过滤器。

你试过吗?

$('#dl-menu a').ready(function(e) {
        var selector = $(this).attr('data-filter');
        $container.isotope({ filter: selector });
        $('.dl-submenu a').show();
        e.preventDefault();
        e.stopPropagation();
    });

我不确定过滤器如何应用于您的子菜单。

编辑....试试这个:

$('#dl-menu-a').ready(function(e) {
        var selector = $('.dl-submenu a').attr('data-filter');
        $container.isotope({ filter: selector });
        $('.dl-submenu a').show();
        e.preventDefault();
        e.stopPropagation();
    });

现在过滤器适用于子菜单属性而不是菜单。

此外,我认为在你的id中添加whietspace(dl-menu a)是不错的做法。我在上面的示例中对其进行了修改。可能只是那个问题的空白。

此主题明确显示了良好的命名约定What are valid values for the id attribute in HTML?