我在谷歌地圖中有一些標記;我想爲body元素添加一個偵聽器,它將檢測單擊的元素是否具有某個類,如果是,則執行某些操作。將事件處理程序添加到正文元素時觸發了多個事件
現在,每次點擊目標元素時,都會觸發所有具有該類的項目的事件。
document.body.addEventListener('click', function(e) {
e.stopPropagation();
if (e.target.className === "price-bubble") {
// do stuff
console.log("hit target");
} else {
// do other stuff
console.log("not hit target");
}
});
html,
body {
height: 100%;
}
body {
border: 1px solid;
}
.price-bubble {
border: 1px solid blue;
}
<div class="map">
<div class="room-marker">
<div class="dot" style="display: block;">
<div class="spacer"></div>
<div class="element">
<div class="icon"></div>
</div>
</div>
<div class="bubble">
<div class="spacer"></div>
<div class="element">
<div class="price-bubble">12,20 €</div>
</div>
</div>
<div class="bubble">
<div class="spacer"></div>
<div class="element">
<div class="price-bubble">12,20 €</div>
</div>
</div>
<div class="bubble">
<div class="spacer"></div>
<div class="element">
<div class="price-bubble">12,20 €</div>
</div>
</div>
<div class="bubble">
<div class="spacer"></div>
<div class="element">
<div class="price-bubble">12,20 €</div>
</div>
</div>
<div class="bubble">
<div class="spacer"></div>
<div class="element">
<div class="price-bubble">12,20 €</div>
</div>
</div>
</div>
</div>
有在你的代碼一個簡單的拼寫錯誤'='=>''==由於 –