Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по вёрстке » Как правильно подключить свои JS библиотеки к шаблону?

Как правильно подключить свои JS библиотеки к шаблону?


     24.07.2022    jquery, js, dle, headers, jsfiles    Общие вопросы по вёрстке, jQuery    667

вопрос
Я подключил галерею fancybox.
Заменил окна быстрого редактирования новости(ajax_prep_for_edit)
Окно работает, но не с первого раза подгружается вся информация, только когда я открываю второй раз окно, все грузится.
А с первого раза выдает вот такую ошибку:
Как правильно подключить свои JS библиотеки к шаблону?


Т.е мой fancy подгружается раньше jquery.
Я уже пробовал использовать {jsfiles} в самом низу страницы, но это не помогает. Как быть?

Ответа пока нет


6 комментариев

lutskboy
Эксперт

lutskboy - 25 июля 2022 12:30 -

lib.js вызывается carousel
а его нет. подключите скрипт carousel перед lib.js

Orlando_blur
Юзер

Orlando_blur - 25 июля 2022 22:30 -

Ну так он и так подключен. Сначала карусель, потом lib

dj-avtosh
PHP-developer

dj-avtosh - 26 июля 2022 12:16 -

встройте через таймаут по появлению jquery

(async() => {
    console.log("waiting for jQuery");

    while(!window.hasOwnProperty("jQuery")) {
        await new Promise(resolve => setTimeout(resolve, 100));
    }
       
    console.log("jQuery is loaded.");
})();

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

Orlando_blur
Юзер

Orlando_blur - 26 июля 2022 13:43 -

Как мне это использовать тут?

function ajax_prep_for_edit( news_id, event ){
	$.get(dle_root + "engine/ajax/controller.php?mod=editnews", { id: news_id, field: event, action: "edit" }, function(data){
		new Fancybox([{
		      	src: "<div class='position-relative' style='min-width:640px;width100%;'> " + data + "<button type='button' class='btn btn-sm btn-primary fw5 fs09' id='postsavetbtn'>Сохранить</button></div>",
		      	type: 'html',
		        closeButton: true,
		        dragToClose: false,
		        autoFocus: false,
		    },],{
		    on: {
		      	done: (fancybox, slide) => {
		      		var b = {};
		      		$( "#postsavetbtn" ).click(function() {
			        	ajax_save_for_edit( news_id, event );
					});
		      	},
		    },
		});
	}, 'html');
	return false;
};

Это же dleшная функция

dj-avtosh
PHP-developer

dj-avtosh - 26 июля 2022 16:10 -

нужно совсем немного подумать.

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

Orlando_blur
Юзер

Orlando_blur - 26 июля 2022 14:21 -

Тут у меня проблема с qq загрузчиком, по идее он загружается позже моего окна

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх