Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Отследить момент создания нового селектора (https://javascript.ru/forum/jquery/56547-otsledit-moment-sozdaniya-novogo-selektora.html)

ligisayan 21.06.2015 19:53

Отследить момент создания нового селектора
 
Приветствую! Есть список пополняющийся динамически.
<ul>
  <!-- Сюда динамически добавляются li-->
</ul>

Мне нужно отследить создание нового элемента li не имеющего класса empty
это как-то можно отследить с помощью wait или другого аналога
wait.until li.hasClass("empty")

?

рони 21.06.2015 20:00

ligisayan,
зачем создавать новую тему -- выход прост найти функцию которая добавляет и php тут совсем не причём , хотите по ненормальному решить проблему читайте про MutationObserver

рони 21.06.2015 20:11

ligisayan,
или может вам нужно поставить скрипт после ul ?

ligisayan 21.06.2015 21:51

Цитата:

Сообщение от рони (Сообщение 375976)
ligisayan,
или может вам нужно поставить скрипт после ul ?

последнее не удастся..
Цитата:

Сообщение от рони (Сообщение 375976)
зачем создавать новую тему -- выход прост найти функцию которая добавляет и php тут совсем не причём , хотите по ненормальному решить проблему читайте про MutationObserver

вот функция добавления - http://jsfiddle.net/ligisayan/2nv7f5uv/
пытаюсь ее ухватить за триггер added_to_cart
$('.list').on('added_to_cart', function() {...}

или навесить свой в конец функции
// Ajax add to cart
	$( document ).on( 'click', '.add_to_cart_button', function(e) {..}).trigger("addtocart");

не выходит...

рони 21.06.2015 22:14

ligisayan,
так вам же в секцию // Ajax action нужно добалять ваш код -- пришёл ответ он что-то меняет одному вам известно что и где - нужно найти это место, где происходит нужное изменение и добавить после него добавление в ваш слайдер.

ligisayan 21.06.2015 22:23

Цитата:

Сообщение от рони (Сообщение 376011)
ligisayan,
так вам же в секцию // Ajax action нужно добалять ваш код -- пришёл ответ он что-то меняет одному вам известно что и где - нужно найти это место, где происходит нужное изменение и добавить после него добавление в ваш слайдер.

Мне вот это нужно отслеживать
// Ajax add to cart
	$( document ).on( 'click', '.add_to_cart_button', function(e) {..}

ну так я на него треггер вешаю, что отслеживать изменения или не так?

рони 21.06.2015 22:35

Цитата:

Сообщение от ligisayan
Мне вот это нужно отслеживать

зачем?
$( document ).on( 'click', '.add_to_cart_button', function(e) {ваштригер сюда но зачем он тут?..}

ligisayan 21.06.2015 22:50

Цитата:

Сообщение от рони (Сообщение 376015)
зачем?
$( document ).on( 'click', '.add_to_cart_button', function(e) {ваштригер сюда но зачем он тут?..}

ну, чтобы отследить изменение его через скрипт
$('.list').on('тригер', function() {}

или что-то я неправильно понимаю?

рони 21.06.2015 23:00

ligisayan,нужно найти в вашем коде место где происходит добавление li и после добавить код вставки в слайдер.

всё.
более вариантов кроме MutationObserver я незнаю

ligisayan 21.06.2015 23:07

Цитата:

Сообщение от рони (Сообщение 376020)
ligisayan,нужно найти в вашем коде место где происходит добавление li и после добавить код вставки в слайдер.

всё.
более вариантов кроме MutationObserver я незнаю

А если отслеживать изменение размера ul.length или изменение hasclass?


Часовой пояс GMT +3, время: 07:43.