Могу ли я иметь два события jquery onclick в одном элементе?

Я знаю, что об этом уже спрашивали, но я могуЯ не совсем понимаю, как добавить мои функции в один клик.

Текущий код клика:

<a class="thumbLinkCart" href="#" onclick="simpleCart.add('name=lemon','price=7.99','image=images/thumbs/yellowgold.jpg');return false;"></a>

Второе событие, которое будет добавлено:


    $(document).ready(function() { 
      $('#demo12').click(function() { 
   $.growlUI('Item added to cart'); 
}); 
}); 

Может ли кто-нибудь помочь мне добавить вторую функцию к первому событию onclick, пожалуйста.

 user248774620 июн. 2013 г., 01:38
Спасибо, работал как шарм!
 Matt Ball20 июн. 2013 г., 01:27
Удалите встроенный обработчик событий и свяжите их оба с помощью jQuery.
 metadings20 июн. 2013 г., 01:30
также добавитьid='demo12' атрибут, что jQuery может найти ссылку

Ответы на вопрос(3)

Вы можете иметь несколько событий (похожих), связанных с одним и тем же элементом. Но если вы связываете события с помощью встроенного обработчика событий, вы можете определить только одно событие.

НОТА : Всегда лучшая идея связывать события, используя javascript, так как он поддерживает разделение задач и в целях удобства обслуживания.

Вместо этого вы можете привязать несколько событий к элементам в своем коде JS, что намного чище

JQuery

 $('#demo12').on('click', function() { 
    alert('1st click event');
    //  Add items to the cart here
});

$('#demo12').on('click', function() { 
    alert('2nd click event');
    //  Do something else
});

Ванильный Javascript

document.querySelector('#demo12').addEventListener('click', function() { 
    alert('1st click event');
    //  Add items to the cart here
});

document.querySelector('#demo12').addEventListener('click', function() { 
    alert('2nd click event');
    //  Do something else
});

Проверьте скрипку

 irfandar07 окт. 2016 г., 11:37
@ Sushanth-- Какой будет порядок выполнения событий
 Sushanth --16 дек. 2013 г., 23:26
@JeremyPridemore .. Рад, что помог :)
 Jeremy Pridemore15 дек. 2013 г., 14:20
+1, потому что этот метод позволяет мне применить событие click к элементу дважды, используя разные селекторы. (например, функция, специфичная для кнопки, и функция для всех кнопок). Спасибо!
 Sushanth --07 окт. 2016 г., 20:17
@irfandar Порядок, в котором будут связаны события.

Это'Обычно считается плохой практикой использоватьonclick приписывать. Слишком много структуры (HTML) смешивается с поведением (JavaScript).

Почему бы не сделать все это вместе?

<a class="thumbLinkCart" href="#">Link</a>

А также


  $(document).ready(function() { 
    $('.thumbLinkCart').click(function() {
      simpleCart.add('name=lemon','price=7.99','image=images/thumbs/yellowgold.jpg'); 
      $.growlUI('Item added to cart'); 
    }); 
  }); 

 hamstu20 июн. 2013 г., 01:55
Нет проблем. Продолжайте практиковаться, учиться и задавать вопросы!
 user248774620 июн. 2013 г., 01:37
вау этоЭто так эффективно, и это сработало отлично ... Очень понравилось. Я определенно должен прочитать о JS больше ...

Попробуй заменить "вернуть ложь; " с "event.preventDefault ();», Это должно позволить событию распространиться вверх, так что обработчик клика сработает, но все же остановит навигацию a-href.

Ваш ответ на вопрос