Есть ли способ получить доступ к дереву событий? - PullRequest
0 голосов
/ 16 сентября 2018

Я работаю над приложением, в котором мне нужно иметь прослушиватель событий для некоторых контейнеров, которые клонируются и имеют те же свойства. По щелчку я хотел бы получить идентификатор контейнера, чтобы я мог выполнить функцию. Например, html-контейнеры таковы:

<div id="myContainer" class="col">
        <p class="bullet-right">&#9673</p>
        <p class="bullet-left">&#9673</p>
        <a href="#" class="color-picker"><i class="fas fa-palette color-inpust"></i></a>
        <input class="box main-title center-align" type="text" value="Enter title here">
    </div>

<div id="myContainer2" class="col">
        <p class="bullet-right">&#9673</p>
        <p class="bullet-left">&#9673</p>
        <a href="#" class="color-picker"><i class="fas fa-palette color-inpust"></i></a>
        <input class="box main-title center-align" type="text" value="Enter title here">
    </div>

Только имя идентификатора отличается. Так что при таргетинге на общего слушателя событий, такого как:

$(window).mousedown(function(e){

Или

$('body > div').mousedown(function(e){

Я могу использовать e.target.id, но если щелчок находится на классе внутри контейнера, мне нужно использовать e.target.parentElement.id, чтобы отследить его, и он станет негибким. Есть ли удобный способ получить доступ к пузырящему дереву и искать, например, имя id «myContainer»?

Также я попытался использовать $ (window) .get (0) .addEventListener ("mouseup", function (e) { Но event.target.id всегда указывает на точно выбранный элемент.

Заранее спасибо

...