Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Live click выполняется несколько раз

Практика



Привет, Вы узнаете о том , что такое Live click выполняется несколько раз, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое Live click выполняется несколько раз , настоятельно рекомендую прочитать все из категории Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend).


live click выполняется несколько раз

код


$('#sendr').live('click', function() {

});


даже после замены на

$('#sendr').bind('click', function() { });

$('#sendr').click( function() { });

$( "#sendr" ).on( "click", "a", function( e ) {} );

все равно срабатывает 2 раза при одном нажатии не пойму в чем причина

вообще то методы live уже в новых версиях не поддерживаются вместо них ON используйте,

а у вас вероятно проблема в том что метод навешен несколько раз
если у вас код jquery в отдельном файле то проверьте сколько раз он подключен, сорее всего два раза

да спасибо, действительно был подключен два раза

можете подробнее написать как заменить live на on

// Bind навешивает обработчик непосредственно на элемент (когда тот есть в DOM-е). Об этом говорит сайт https://intellect.icu . При удалении элемента так-же удаляется
$( "#sendr li a" ).on( "click", function( e ) {} ); заменяет
$( "#sendr li a" ).bind( "click", function( e ) {} );



// Live навешивает обработчик на document, используется делегирование (всплытие событий). Позволяет создать обработчик до того, как элемент появится в DOM-е. При удалении элумента обработчик не удаляется, а просто перестает срабатывать. Если в DOM снова вставить элемент, подходящий под селектор, обработчик снова отработает.
Используется даже для тех элементов , которые будет добавлены в будующем, и для их тоже буджет сработывать навешенный метод


$( document ).on( "click", "#sendr li a", function( e ) {} ); заменяет
$( "#sendr li a" ).live( "click", function( e ) {} );


// delegate — точно так-же, как и live, использует делегирование, только явно указывается узел, на который навешивается обработчик.

$( "#sendr" ).on( "click", "li a", function( e ) {} ); заменяет
$( "#sendr" ).delegate( "li a", "click", function( e ) {} );



при назначении live, на самом деле вешается событие на window.document и при возникновении любого клика по документу, проверяется "а кликнули не по нужному ли нам типу элемента"

Исследование, описанное в статье про Live click выполняется несколько раз, подчеркивает ее значимость в современном мире. Надеюсь, что теперь ты понял что такое Live click выполняется несколько раз и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)

Из статьи мы узнали кратко, но содержательно про
создано: 2013-08-01
обновлено: 2024-11-14
398



Рейтиг 10 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей

Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)

Термины: Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)