Добрый день, мне нужно динамично проверять порядковый номер всех div с классом .block, и только нужным добавлять класс add, нужные индексы в массиве arr. Div.block я добавляю динамично на ajax. Но добавлять class нужно циклично до 18-го элемента, то бишь выполнилась проверка, добавилось 3, 7, 11, 18 элементам класс add, затем если добавились новые блоки .block, и функцию опять проверяет элементы, и выдает не каждому 3-м, а только первому 3-м, первому 7, а если div.block уже больше 18, то проверка заново, то бишь опять первый 3, 7 и т.д циклично Я написал такую функцию, но отрабатывает не правильно, почему-то выдает первому 3-му правильно, а далее не пойми как... Подскажите пожалуйста что не так делаю? заранее спасибо! Код (Javascript): function updateClass(){ var content = $('.block'), arr = [3, 7, 11, 18]; if(content .length > 0){ content .each(function(index, element) { if(arr.indexOf( index ) != -1){ $(this).addClass('add'); } }); } }
Чтобы кто-то помог, залейте ваш рабочий/нерабочий код на https://jsfiddle.net/ хотя бы, чтобы можно было запустить весь скрипт и понять что не так и как поправить... В вашем коде не хватает как минимум разметки и возможно других частей кода... Без этого ничего не разобрать. Тут нет экстрасенсов.
https://jsfiddle.net/du4g39hL/1/ Сделал, сейчас проблема в чем: Первый раз добавляет как нужно 4, 8, 12, 19, а далее когда динамично добавляю новые div, то уже не добавляет, а нужно чтобы добавляло следующим новым в таком же порядке, то бишь если у нас 41 div с классом block, то скрипт добавит класс add следующим div по порядку: 4, 8, 12, 19, 26, 30, 34, 41 и т.д по аналогии циклично до бесконечности, новый отсчет проверки идет каждые 22 div