@hime2

Как лучше вызывать?

Как лучше вызывать функцию ?
К примеру
<p> добавить в список </p>при клики записывается.
Такое можно реализовать как минимум тремя способами.
Но как лучше ?

Можно взять за пример корзину, там нужен более расширенный функционал, а значит по id не так хорошо и onclick тоже уходит в прошлое
  • Вопрос задан
  • 190 просмотров
Решения вопроса 3
Stalker_RED
@Stalker_RED
Используйте data-аттрибуты.

<p data-product-id="1234">something</p>

$('p[data-product-id]').on('click', function(){
    var id = $(this).data('data-product-id')
    ...
})
Ответ написан
@heartdevil
плыву как воздушный шарик
Привет.

Доступ к элементу по id -- это самый быстрый доступ. Если есть возможность использовать id, то всегда используйте.

onclick как атрибут для html элемента действительно уходит в прошлое, но onclick/click как событие никто еще не отменял.

Если вы работаете с чистым javascript, то вам в любом случае придется подписываться на это событие.

К примеру, вот так:

var el = document.getElementById("id");
el.addEventListener("click", modifyText, false);


Если вы используете jquery, то смысла использовать чистый javascript мало, так как есть более абстрактные методы типа

click() - Bind an event handler to the "click" JavaScript event, or trigger that event on an element. This method is a shortcut for .on( "click", handler ) in the first two variations, and .trigger( "click" ) in the third. The click event is sent to an element when the mouse pointer is over the element, and the mouse button is pressed and released.

on() - Attach an event handler function for one or more events to the selected elements

Из этих двух выбирайте, согласно описанию, тот, который более подходит.

Если вы используете какую-то другую библиотеку, то используйте методы привязки обработчиков событий из этой библиотеки, если таковые имеются.

Но на самом деле, все зависит от задачи. Вы задали слишком общий вопрос. В данном случае преимущества одного способа над другим несущественны. Выбирайте любой.
Ответ написан
PavelK
@PavelK
по айди и классу
$(".buttonadd#id111").on("click", function(){
...
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
25 апр. 2024, в 11:49
25000 руб./за проект
25 апр. 2024, в 11:37
40000 руб./за проект