Загрузка js и css «по требованию»
Задача: по какому то условию (ну в моем случае это загрузка скрипта «Тура по сайту» если вдруг пользователь его не проходил), необходимо до грузить дополнительные JS и CSS файлы, а по завершению их загрузки — запустить.
Решение:
function TourStart(){
if ((localStorage.getItem(document.location.pathname+"_tour")==null)||(localStorage.getItem(document.location.pathname+"_tour")==false)){
element = document.createElement("script");
element.src = "https://shepherdjs.dev/dist/js/shepherd.js";
element.addEventListener('load', () => {
console.log("--загружаем тур!");
element = document.createElement("script");
element.src = "/js/tour.min.js";
document.body.appendChild(element);
});
document.body.appendChild(element);
element = document.createElement("link");
element.href = "https://shepherdjs.dev/dist/css/shepherd.css";
element.rel="stylesheet"
document.body.appendChild(element);
};
};
console.log("-- main.js загружен");
$(document).ready(function() {
TourStart(); // стартовать тур по странице если нужно..
});