Загрузка js файлов после загрузки страницы

Есть не большая проблема,

Загрузка страниц на моем сайте происходит в 2 этапа, изначально загружается шапка и вставляется на страницу, затем тело страницы. Получание страницы происходит через ajax. Проблема заключается в том что необходимо подгружать js файлы после того как загрузится тело, однако есть вставить это <script type="text/javascript" src="assets/scripts/tagsinput.js"></script> в файле где находится тело страницы, то после того как ajax получит страницу и вставит ее на сайт никаких подгрузок не происходит. Как можно было бы исправить это?


Ответы (1 шт):

Автор решения: Denis640Kb

Вы можете же просто использовать jquery для подгрузки документов:
Логика следующая:
- Вы загружаете страницу. - На неё загружаете header. - Загружаете тело страницы. - Отслеживаете загрузку страницы и добавляете в загруженный документ новый html, который содержит ссылки на скрипты.

Например первый файл help48.html:

<script
    src="https://code.jquery.com/jquery-3.4.1.js"
    integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU="
    crossorigin="anonymous"></script>
<style>
    .main{
        width: 200px;
        height: 200px;
        background: #003eff;
    }
</style>
<div class="main">
    <div class="add">
    </div></div>
<button id="but">Добавить файл</button>
<script language="JavaScript">
    $(window).on('load', function () { // При загрузке документа
        $('#but').on('click', function () { // Отслеживаем нажатие кнопки
            $('.add').load('help49.html'); // Подгружаем файл в поле с классом add
        })
    })
</script>

Второй файл, который подгружаем - help49.html:

<script src="help59.js"></script>

Третий файл сам js - help59.js:

let z = document.getElementsByClassName('add')[0];
z.innerText = 'zzzzzzz';

Запускаем первый файл: введите сюда описание изображения

Нажимаем кнопку подгрузки другого документа(результат нажатия): введите сюда описание изображения

Как видим из результата - данные подгружаются корректно и сразу выполняются.

→ Ссылка