停止传播困境?

stopPropagation dilemma?

一、示例js代码:

$(function(){
   
    $('body').click(function(){alert('body clicked');});
    
    $('body').on('click','.post-header',function(e){
        
        e.stopPropagation();
        $(this).next('.post-content').slideToggle();
    
    
    })
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body> 

        <div class="post-wrapper">
            <h2 class="post-header">Lorem Ipsum</h2>
            <div class="post-content">
                <p>Lorem Ipsum is simply dummy text of....</p>
            </div>
        </div>
      
    </body>

我的问题是,如果 e.stopPropogation() 终止了对 body 的冒泡,那么点击事件如何击中 body 并触发处理程序到 运行 幻灯片代码?

参考this answer之前的一个类似问题,结果发现'generally'使用stopPropagation with delegated even handling是没用的。在激活 stopPropagation 之前,事件已经传播到 body。

但在上面的示例中,stopPropagation 实际上可以防止其他点击事件处理程序附加到正文。