В основном у меня есть 4 представления на моей странице (4 разных раздела на одной HTML-странице), я скрываю и показываю необходимые представления на основе нажатия кнопки.
У меня есть 4 отдельных файла JS для этих 4 представлений. В зависимости от того, на какой странице находится пользователь, я загружаю страницу JS с помощью команды
//Page1
if (current_page == 'Page1') {
$.getScript("/js/Page1.js");
}
Я хочу удалить все неиспользуемые JS (JS, которые используются для других страниц), когда пользователь переходит на 2-ю страницу, и должен быть загружен только Page2.js. В настоящее время, когда пользователь переходит на 2-ю страницу (с страницы 1 на страницу 2), загружаются как Page1.js, так и Page2.js.
$.getScript может загружать JS, но есть ли команда или способ удалить JS со страницы и динамически загрузить файл JS?
@Arvind Что вы имеете в виду под clean up your actual code? Я этого не понял.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вот хороший пост, который объясняет это, но вы можете удалить элемент <script>, который вы не используете:
<script id = "page1script" src = "/js/Page1.js"></script>
И в jQuery:
if (current_page != 'Page1') {
$("#page1script").html().remove();
}
технически кажется, что это не имеет никакого значения
Спасибо за ответ, я смог разобраться в проблеме и решить ее. В основном у меня были некоторые общие функции в Page1 JS и Page2 JS, поэтому я хотел, чтобы некоторые функции в моем Page2 JS не запускались, когда я использую Page1, но они выполнялись, потому что они использовали те же модальные идентификаторы и идентификаторы отправки формы.
Я объявил переменную в JS и на основании этого убедился, что функции в Page2 JS не работают, когда я нахожусь в Page1.
var Page_Checker = "";
//Page1
if (current_page == 'Page1') {
$.getScript("/js/Page1.js");
Page_Checker = "THIS_IS_PAGE1"
}
Используйте Page_Checker и убедитесь, что функции не выполняются в других файлах JS.
Может быть, вы можете сделать что-то подобное в других файлах JS:
if (Page_Checker != "THIS_IS_PAGE1")
return;
Нет, дорогая, вы не можете отменить загруженные js, все, что вы можете сделать, это очистить ваш реальный код вместо этого, удалив неиспользуемые скрипты / плагины.