Вопрос по javascript, javascript-events, jquery – при нажатии на ребенка не нажимать

11

У меня есть следующий HTML-код:

<div class="outerElement">
    <div class="text">
     Lorem ipsum dolar sit amet
    </div>
    <div class="attachment">
      <!-- Image from youtube video here -->
    </div>
</div>

И у меня есть событие jQuery onclick для & quot; .outerElement & quot; тем не менее, я не хочу & quot; .outerElement & quot; Событие onclick, которое вызывается при нажатии на вложение, есть ли способ предотвратить это или проверить, по какому элементу щелкнули?

Error: User Rate Limit Exceeded xorinzor

Ваш Ответ

4   ответа
0

Error: User Rate Limit ExceededattachmentError: User Rate Limit Exceeded

$('.outerElement').click(function() {
  if ($(this).hasClass('attachment')) {
    return;
  }
  // Handle event
});
0

Error: User Rate Limit Exceededonclick="event.stopPropagation();"Error: User Rate Limit Exceeded

2

<div class="outerElement">
    <div class="attachment">Hello</div>
</div>

<script type="text/javascript">
document.getElementsByClassName('outerElement').onclick = function(){

    alert('You clicked on parent');

}
document.getElementsByClassName('attachment').onclick = function(){

    event.stopPropagation();
    alert('You clicked on child');

}
</script>
Error: User Rate Limit Exceededevent
19

event.stopPropagation()

$(".attachment").on("click", function(event){
  event.stopPropagation();
  console.log( "I was clicked, but my parent will not be." );
});

eventtarget memberstopPropagation

$(".outerElement").on("click", function(event){
  console.log( event.target );
});

Похожие вопросы