Вход

Просмотр полной версии : Блокировка повторного подключения скриптового файла


BesTime
11.02.2018, 00:58
Всем привет.
Уже долго бьюсь над следующей проблемой:
Есть главная страница с меню, в нее подгружаются ajax другие страницы.
У каждой подгруженной страницы есть свой скриптовый файл.
Если я захожу на страницу один раз, то все нормально.
Если перейти на другую страницу и вернуться, то скриптовый файл будет опять подгружен и получится что он дублируется, и при выполнение какого-то действия на странице оно выполняется 2 раза. Как определить что этот скриптовый файл уже был загружен и ненужно его грузить заново?

Белый шум
11.02.2018, 01:26
var scripts = [];
/* ... */
var s1 = '/scripts/page1.js';
if( scripts.indexOf(s1) == -1 ) {
scripts.push(s1);
//загружаем скрипт
}

BesTime
11.02.2018, 01:48
var scripts = [];
/* ... */
var s1 = '/scripts/page1.js';
if( scripts.indexOf(s1) == -1 ) {
scripts.push(s1);
//загружаем скрипт
}

То что нужно, спасибо за помощь. :thanks:

BesTime
11.02.2018, 02:41
Не повлияет ли на производительность тот факт что файл все-равно подгружается хоть и пустой?

Белый шум
11.02.2018, 10:19
Если загрузка асинхронная, то почти не повлияет. Но всё-равно лучше не подгружать когда заранее известно что он пустой.