Чтобы добавить сценарий динамически, нам нужно создать элемент сценария и добавить свойство src элемента сценария и, наконец, добавить элемент сценария в тег заголовка (или любой другой тег). Но поведение синхронно, и страница блокируется до полного загрузки javascript. Я хочу знать, есть ли какая-нибудь возможная работа, по которой я могу встроить javascript асинхронно, не используя xhr.Как добавить javascript на кнопку click async
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'urlofthescript';
$("#someElement").append(script);
//the above line blocks the UI until it gets loaded. Why?
Я хотел бы спросить, если мой скрипт для сценария занимает несколько секунд (10 секунд) для визуализации скрипта, тогда пользовательский интерфейс блокируется в течение следующих 10 секунд. Можно ли удалить атрибут async? –
А также, как указано, я не хочу использовать какую-либо другую библиотеку, например requirejs, для ее реализации. Никакие xhr методы также не разрешены. –
Что значит «визуализировать сценарий»? Вы имеете в виду выполнить его? Или загрузить его? Script * loading * может быть асинхронным, используя 'async' в браузерах, которые его поддерживают, по ссылке. Скрипт * исполнение * никогда не может быть асинхронным, если вы не напишете его так, чтобы он периодически отказывался от управления потоком JS. – Amadan