Надеюсь поможете.
Есть меню, при клике на ссылки нужно было сделать динамическую подгрузку в определенный div.
Был написан вот такой код:
$(document).on('click', '.setting a', function(e){
e.preventDefault();
var link = $(this).attr('href');
$("#cnt_area").load(link+' #cnt_area > *', function() {
$.getScript('<?php echo THEMEURL;?>js/script.js');
$.getScript('<?php echo THEMEURL;?>js/function.js');
});
$('li.active').removeClass('active');
$(this).parent().addClass('active');
history.pushState(null, null, link);
});
Работает он отлично, подгружает нужный контент в нужный див, прописывает в адресную строку то что надо, и перезагружает скрипты только после прогрузки запрашиваемого контента.
Проблема вот в чем, после загрузки контента(смена пароля или другого где есть кнопка) при клике по кнопке он выполняет скрипт несколько раз.
Понимаю что при каждом клике по ссылке мой скрипт пишет(подгружает) снова и снова script.js и function.js.
Есть ли какое-нибудь решение как сделать что бы он вначале удалял предыдущие запущенные скрипты, и лишь после срабатывал $.getScript ?
Либо может есть другой вариант как перезагрузить скрипты?