Как загрузить JS-файл с помощью JavaScript - PullRequest
0 голосов
/ 15 мая 2009

Я хочу преодолеть неприятную проблему, которая появляется вчера во время демонстрации для клиента. Мы используем jquery, загружая его из Google API. Но вчера наш провайдер начал вызывать некоторые проблемы и не загружал jq.js должным образом.

Итак, что я действительно хочу, это загрузить локальный файл с сервера, если у google api есть странное поведение (не то, что это будет происходить часто, но, по крайней мере, при локальных демонстрациях мы больше не пострадаем). 1003 *

Я знаю, что <script type="txt/javascript" src="googleapi"> somejs </script> выполняет somejs, когда файл в src не загружается, но не знаю, как загрузить файл туда.

Заранее спасибо

Ответы [ 4 ]

1 голос
/ 15 мая 2009

внутри можно поставить следующие строки:

var localScript = document.createElement("script");
localScript.type = "text/javascript";
localScript.src = "localJQ.js";
document.body.appendChild(localScript);
0 голосов
/ 15 мая 2009

Это не дает прямого ответа на ваш вопрос, но у создателя JQuery Джона Ресига есть интересное сообщение в блоге о выполнении содержимого тега сценария, когда есть также атрибут src.

0 голосов
/ 15 мая 2009

Возможно, научить бабушку сосать яйца, но почему бы не использовать локальную копию на демонстрационной машине всегда?

0 голосов
/ 15 мая 2009

Редактировать: Я был немного нервным. Решение, данное peirix, является правильным. Я просто использую его код, чтобы не позволить неправильному решению загрязнить эту область. Вы можете сделать

var localScript = document.createElement("script");
localScript.type = "text/javascript";
localScript.src = "localJQ.js";
document.body.appendChild(localScript);

для динамической загрузки JavaScript.

Однако даже в этом случае возможны гоночные условия, если на вашей странице есть сценарии, которые зависят от этого сценария. Используйте с осторожностью.

В этой презентации - Даже более быстрые сайты - подробно рассматриваются дополнительные методы загрузки внешних файлов через javascript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...