[英]addEventListener on clicked li - prevent this if a link is clicked that is inside the li
我在單擊的列表項上有一個addEventListener。 如果單擊列表項中的鏈接,我想阻止此addEventListener。
http://jsfiddle.net/8xea1eku/-因此在此示例中。 如果this
是一個單擊的鏈接,我想防止切換操作。 我該怎么辦?
<div class="faq">
<ul>
<li>
asdasdasdasdaa
<span class="answer">
<a href="http://google.com">clickme</a> jdiajdoi asjdoiaj sdoiaj odsjaso djaosdj oaisjdo.
</span>
</li>
<li>
asdasd
<span class="answer">
sadoia hdoas jdiajdoi asjdoiaj sdoiaj odsjaso djaosdj oaisjdo
</span>
</li>
<li>
asdasdasdasd
<span class="answer">
sadoia hdoas jdiajdoi asjdoiaj sdoiaj odsjaso djaosdj oaisjdo
</span>
</li>
</ul>
</div>
if (document.getElementsByClassName('faq').length > 0) {
var faqItems = document.querySelectorAll('.faq li');
for (var i = 0; i < faqItems.length; i++) {
faqItems[i].addEventListener('click', function () {
this.classList.toggle("active");
});
}
}
使用事件對象查看單擊的內容。
faqItems[i].addEventListener('click', function (e) {
if (e.target.nodeName==="A") return;
this.classList.toggle("active");
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.