Size: a a a

Front-end developers

2020 October 07

С

Степан in Front-end developers
Bohdan
Попробуйте сделать так:
1) сделать отдельный блок для асинхронного контента (например между пагинацией и постами)
2) когда пользователь вызывает нужное событие, и вам приходит ответ с сервера, конкатенируйте innerHTML c новым содержимым.
3) После этого, на jquery или ваниле, как вам удобно нужно выбрать только те контейнеры для карусели, которые еще не  были инициализированы. Можно проверять самим сликом (не точно) или добавлять свой дата атрибут например data-loaded.  Ну или просто на атрибуты слик карусели.

—-
UPD: Что касаемо скрина выше, я думаю jquery не находит элементы, которые вы пытаетесь проинциализировать как слик карусель .slick()
спасибо, попробую
источник

AE

Alex Elkin🇪🇸 in Front-end developers
Nickermen
В доке будстрапа почитай, там есть метод, который вызвает модалку
там написано что люди вызывающие модалку из модалки попадут в ад, где для них уже есть свой котел, поэтому они не стали это реализовывать. 🤣
источник

С

Степан in Front-end developers
Bohdan
Попробуйте сделать так:
1) сделать отдельный блок для асинхронного контента (например между пагинацией и постами)
2) когда пользователь вызывает нужное событие, и вам приходит ответ с сервера, конкатенируйте innerHTML c новым содержимым.
3) После этого, на jquery или ваниле, как вам удобно нужно выбрать только те контейнеры для карусели, которые еще не  были инициализированы. Можно проверять самим сликом (не точно) или добавлять свой дата атрибут например data-loaded.  Ну или просто на атрибуты слик карусели.

—-
UPD: Что касаемо скрина выше, я думаю jquery не находит элементы, которые вы пытаетесь проинциализировать как слик карусель .slick()
Там получаеться хрень - слайдер инициализирую в футере, а аякс-догрузка  - раньше. Выходит  $(...).slick is not a function
источник

С

Степан in Front-end developers
только идея - подключить скрипты в хедере
источник

B

Bohdan in Front-end developers
Переместите скрипт в подвал
источник

B

Bohdan in Front-end developers
после слика
источник

С

Степан in Front-end developers
Нет, получилось когда простаивл зависимости в файлах
источник

С

Степан in Front-end developers
Bohdan
Переместите скрипт в подвал
когда я его добавил у список там где все (вниз), тогда не получались данные при аяксе((
источник

С

Степан in Front-end developers
2 слайдера работают) Беда в том, что у меня n-ное количество слайдеров может быть
источник

С

Степан in Front-end developers
Но думаю циклы мне помогут
источник

С

Степан in Front-end developers
Ситуация такая - мне нужно инициализировать каждый слайдер окремо. Для этого я добавил в хтмл дата-атрибут data-slider="load<?php echo $sliderCount; ?>" - где $sliderCount будет прибавляться при каждом запуске аякса. То же самое сделал в js - чтобы запускать именно один - свежесозданный слайдер
$('.section_article[data-slider="load' + (current_page-1) + '"]').slick({ бла-бла
источник

С

Степан in Front-end developers
Но если я делаю что php и jq віводят 1 и тоже число - тогда работает только 1 слайдер на страничке (тот что инициализ при загрузке самой странички) а второй и далее - нет.
Сделал (current_page-1) → заработал первый и один что инициализуеться при аяксе.
Я так понимаю мне просто нужно угадать тот момент когда будут работать оба - подставлять числа.. или как понять)
источник

AZ

Andrew Zotov in Front-end developers
тебе же нужно уникальный параметр ид на каждый слайд а не slidercount....sliderId
источник

AZ

Andrew Zotov in Front-end developers
верно понял?
источник

С

Степан in Front-end developers
Все, понял проблему
источник

С

Степан in Front-end developers
Я выводил все правильно, но забыл исправить ↑↑ и там у меня было статическое число. И я в js обращаюсь теперь только к (current_page)
источник

С

Степан in Front-end developers
Ребят, мой мозг получил оргазм) Спасибо что помагали)
источник

С

Степан in Front-end developers
Теперь смотрю и думаю можно было сделать через id)) а не писать атрибут
источник

B

Bohdan in Front-end developers
Степан
Ребят, мой мозг получил оргазм) Спасибо что помагали)
Нуу...
Я предлагал добавлять атрибут, который говорит что карусель уже создана, можно использовать айдишники..

А можно так
$('section_article').not('loaded');
источник

AZ

Andrew Zotov in Front-end developers
Степан
Теперь смотрю и думаю можно было сделать через id)) а не писать атрибут
да...и это более правильно)
источник