использование jQuery для динамической перезагрузки или переключения внешнего файла js


У меня есть веб-страница, где у меня есть внешний JS-файл, который анимирует некоторые divs. Я хочу поместить кнопку на странице, которая перезагружает файл js с самого начала, чтобы он остановил функцию и начал с самого начала. Я попытался дать тегу сценария идентификатор "анимация", а затем использовать следующее.

$(document).ready(function() {

$(".button").click(function()
{

    $("#animation").attr('src','map.js');

});
}
);
Излишне говорить, что это не сработало. Интересно, как это сделать правильно.
1 2

1 ответ:

Это действительно не очень хорошая вещь, чтобы сделать, гораздо лучше сделать функцию для запуска и остановки анимации. Но если вы действительно действительно должны:

$(".button").click(function( e ) { 

    //change this to the id of your script
    $('#the_script').remove();

    var script = document.createElement('script');
    script.id = 'the_script';
    //the script's source here
    script.src = 'test_js.js';
    script.type ='text/javascript';
    document.getElementsByTagName('head')[0].appendChild(script);

});