Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 24.03.2022, 17:52
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от firsmember
мне нужно, прослушивать,
исключите этот алгоритм из ваших практик, ищите причину, а не волшебный хук.

хотите мучатся, читайте про MutationObserver
Ответить с цитированием
  #12 (permalink)  
Старый 24.03.2022, 17:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от firsmember
// где вставить данные
jQuery(function($) {
            let num = 0;
            // AJAX загрузка страниц/записей WP
            $('.btn-loadmore').on('click', function() {
                let _this = $(this);
                _this.html('<span class="fas fa-redo fa-spin"></span> Загрузка...'); // изменение кнопки
                let data = {
                    'action': 'loadmore',
                    'query': _this.attr('data-param-posts'),
                    'page': this_page,
                    'tpl': _this.attr('data-tpl')
                }
                $.ajax({
                    url: '/wp-admin/admin-ajax.php',
                    data: data,
                    type: 'POST',
                    success: function(data) {
                        if (data) {
                            _this.html('<span class="fas fa-redo"></span> Загрузить ещё');
                            _this.prev().parent().append(data); // где вставить данные
                            jQuery('.slider-prm-rab-box-block:not(.addslider)').each((i, el) => {
                                jQuery(el).addClass('addslider');
                                jQuery('.slider-for', el).attr('id', `fff${++num}`);
                                jQuery('.slider-nav', el).attr('id', `nnn${num}`);
                                jQuery('.slider-for', el).slick({
                                    slidesToShow: 1,
                                    slidesToScroll: 1,
                                    arrows: true,
                                    fade: true,
                                    asNavFor: `#nnn${num}`
                                });
                                jQuery('.slider-nav', el).slick({
                                    slidesToShow: 4,
                                    slidesToScroll: 1,
                                    asNavFor: `#fff${num}`,
                                    vertical: true,
                                    verticalSwiping: true,
                                    dots: false,
                                    focusOnSelect: true
                                });
                            });
                            this_page++; // увелич. номер страницы +1
                            if (this_page == _this.attr('data-max-pages')) {
                                _this.remove(); // удаляем кнопку, если последняя стр.
                            }
                        } else { // если закончились посты
                            _this.remove(); // удаляем кнопку
                        }
                    }
                });
            });
        });
Ответить с цитированием
  #13 (permalink)  
Старый 24.03.2022, 18:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

firsmember,
так лучше ...
jQuery(function($) {
            let num = 0;
            function addslider()
            {jQuery('.slider-prm-rab-box-block:not(.addslider)').each((i, el) => {
                                jQuery(el).addClass('addslider');
                                jQuery('.slider-for', el).attr('id', `fff${++num}`);
                                jQuery('.slider-nav', el).attr('id', `nnn${num}`);
                                jQuery('.slider-for', el).slick({
                                    slidesToShow: 1,
                                    slidesToScroll: 1,
                                    arrows: true,
                                    fade: true,
                                    asNavFor: `#nnn${num}`
                                });
                                jQuery('.slider-nav', el).slick({
                                    slidesToShow: 4,
                                    slidesToScroll: 1,
                                    asNavFor: `#fff${num}`,
                                    vertical: true,
                                    verticalSwiping: true,
                                    dots: false,
                                    focusOnSelect: true
                                });
                            });

            }
            addslider(); //установка слайдера при первой загрузке страницы

            // AJAX загрузка страниц/записей WP
            $('.btn-loadmore').on('click', function() {
                let _this = $(this);
                _this.html('<span class="fas fa-redo fa-spin"></span> Загрузка...'); // изменение кнопки
                let data = {
                    'action': 'loadmore',
                    'query': _this.attr('data-param-posts'),
                    'page': this_page,
                    'tpl': _this.attr('data-tpl')
                }
                $.ajax({
                    url: '/wp-admin/admin-ajax.php',
                    data: data,
                    type: 'POST',
                    success: function(data) {
                        if (data) {
                            _this.html('<span class="fas fa-redo"></span> Загрузить ещё');
                            _this.prev().parent().append(data); // где вставить данные
                            addslider();//!!!! //установка слайдера добавлении html
                            this_page++; // увелич. номер страницы +1
                            if (this_page == _this.attr('data-max-pages')) {
                                _this.remove(); // удаляем кнопку, если последняя стр.
                            }
                        } else { // если закончились посты
                            _this.remove(); // удаляем кнопку
                        }
                    }
                });
            });
        });
Ответить с цитированием
  #14 (permalink)  
Старый 24.03.2022, 18:48
Кандидат Javascript-наук
Отправить личное сообщение для firsmember Посмотреть профиль Найти все сообщения от firsmember
 
Регистрация: 08.11.2019
Сообщений: 113

Мне id нужно где то присвоить в html ? т.к. сейчас ошибку в консоли дает ((Uncaught TypeError: jQuery(...).slick is not a function) at addslider (myloadmore.js?ver=5.9.2:4))
Ответить с цитированием
  #15 (permalink)  
Старый 24.03.2022, 18:58
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от firsmember
jQuery(...).slick is not a function
значит плагин не загружен, до этого кода.
Ответить с цитированием
  #16 (permalink)  
Старый 24.03.2022, 19:40
Кандидат Javascript-наук
Отправить личное сообщение для firsmember Посмотреть профиль Найти все сообщения от firsmember
 
Регистрация: 08.11.2019
Сообщений: 113

Нет, не в этом дело, проверил
Ответить с цитированием
  #17 (permalink)  
Старый 24.03.2022, 19:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

firsmember,
можно только гадать, другого алгоритма предложить не могу.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AJAX несколько элементов на странице... myocean AJAX и COMET 2 12.11.2012 12:27
Несколько версий JQuery UI на одной странице. Casufi jQuery 2 10.11.2012 15:24
Переключение radiobutton на странице Дуб-Дубом Элементы интерфейса 2 24.09.2012 08:49
Несколько iframe на странице oblomov86 Events/DOM/Window 3 19.12.2011 12:00
Несколько скрытых аудио-плееров на странице fanks Элементы интерфейса 1 21.02.2011 13:33