Можешь объяснить разницу между event bubbling и event capturing в JavaScript, включая то, как они отличаются по направлению распространения события и как указать, в какой фазе должен срабатывать listener? — ДейлиПреп