为什么preventDefault不起作用但返回false呢

Tal*_*boy 4 html javascript ajax jquery

有谁知道为什么我的preventDefault代码不起作用?return false返回正常,但我的理解是,这不是真正的"正确"方式吗?

 if ($('.signup').length == 0) {
        $('.star').on('click',function(e){
            e.preventDefault();
            var starElement = $(this);
            var resourceId = starElement.parents('li').data('id');

            updateFavoritesSpan( starElement, starElement.hasClass('starred') );

            starElement.toggleClass('starred');
            starElement.parents('li').toggleClass('fvtd');
        });
        // voting
        $('.voting').on('click .up', function(e){
            e.preventDefault();
            sendVote($(this), 1);
        });

        $('.voting').on('click', '.down', function(e){
            e.preventDefault();
            sendVote($(this), -1);
        });
    }
Run Code Online (Sandbox Code Playgroud)

Roc*_*mat 7

return false;preventDefault和两个stopPropagation.

preventDefault停止元素上的"默认"操作,stopPropagation停止事件冒泡到父元素.

我的猜测是,父母的事件仍在被触发时才会被触发preventDefault.