Javascript - event.stopPropagation() 在 BS4 手风琴上从 parent 到 child 不工作

Javascript - event.stopPropagation() not working from parent to child on BS4 accordion

我正在使用相互嵌套的 BS4 手风琴。

我遇到了从 parent 到 child 和 child 到 parent 的事件冒泡 我已经解决了一个从 child 到 parent 使用 event.stopPropagation() 但是事件从 parent 冒泡到 child 没有停止为什么?

这是代码

$('.card > .collapse').on('shown.bs.collapse', function(e){
    e.preventDefault();  
    e.stopPropagation();
      $(this).parent().find(".flaticon-down-arrow").removeClass("flaticon-down-arrow").addClass("flaticon-right-arrow");

  }).on('hidden.bs.collapse', function(e){
    e.preventDefault();  
    e.stopPropagation();
    $(this).parent().find(".flaticon-right-arrow").removeClass("flaticon-right-arrow").addClass("flaticon-down-arrow");

})

Here is my codepen link

注: - 查看类

的变化

事件冒泡只上升到 DOM 树(从 child 到 parent,到 grandparent,等等)。它不会 下降 DOM 树。因此,parent 上的任何事件都不会冒泡到其 children。

documentation 声明在事件冒泡期间(对于点击事件):

The browser checks to see if the element that was actually clicked on has an onclick event handler registered on it in the bubbling phase, and runs it if so. Then it moves on to the next immediate ancestor element and does the same thing, then the next one, and so on until it reaches the element.