Загрузка js и css «по требованию»
Задача: по какому то условию (ну в моем случае это загрузка скрипта «Тура по сайту» если вдруг пользователь его не проходил), необходимо до грузить дополнительные JS и CSS файлы, а по завершению их загрузки — запустить.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
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(); // стартовать тур по странице если нужно.. }); |