事件.防止为父级,但不适用于子级



我有一个 3 级导航和 event.preventDefaul(); 应该只影响导航的第一级,但它影响所有 3 个级别,我该如何更改?

JS代码

var $topLevelItems = $("nav > ul > li");
    $topLevelItems.click(function(event) {
event.preventDefault();
        if (!$(this).hasClass('selected')) {
            $topLevelItems.removeClass('selected')
                .find('.level_2')
                .slideUp('slow');
            $(this).addClass('selected')
                .find('.level_2').fadeIn('slow')
                .slideDown('slow',function(){
                    $('#nav').animate({height:$topLevelItems.find('.level_2:visible').height()+55},200);
                });
        }
    });

当我尝试此操作时,该函数无法启动:

var $topLevelItems = $("nav > ul > li");
    $topLevelItems.click(function(event) {
            if (this !== event.target) { 
            return; 
            event.preventDefault();
            }
        if (!$(this).hasClass('selected')) {
            $topLevelItems.removeClass('selected')
                .find('.level_2')
                .slideUp('slow');
            $(this).addClass('selected')
                .find('.level_2').fadeIn('slow')
                .slideDown('slow',function(){
                    $('#nav').animate({height:$topLevelItems.find('.level_2:visible').height()+55},200);
                });
        }
    });

相关内容

  • 没有找到相关文章

最新更新