Описывается функция jQuery.getScript(), производящая AJAX загрузку JavaScript-ов на клиент. Приведены примеры использования.
jQuery.getScript( url[, success(script, textStatus, jqXHR) ] ) — используется для динамической загрузки и исполнения на клиенте скриптов.
Входные параметры
- url — строка адреса, по которому посылается запрос, обязательный параметр.
- success(script, textStatus, jqXHR) — callback функция, выполняемая в случае успешного выполнения запроса. При вызове ей передаются сам скрипт script, текстовая строка состояния запроса textStatus и объект jqXHR, реализующий AJAX запросы(детальнее об jqXHR можно узнать в описании возвращаемых параметров функции jQuery.ajax().
Возвращаемое значение — объект jqXHR.
Загруженный скрипт выполняется в глобальном контексте, поэтому он может использовать другие переменные, функции jQuery и т.п. По умолчанию при использовании этой функции скрипты не кешируются, но желающие могут использовать кеш с помощью jQuery.ajaxSetup():
$.ajaxSetup({ cache: true });
Примеры использования функции getScript()
Пример1 Пример запроса простейшего скрипта, который выдает на экран модальное окно с сообщением.
$.getScript('ajax/message.js', function() {
alert('Сообщение о каком-либо событии');
});
Пример2 Пример работы метода getScript(). В примере ниже по AJAX запросу загружается скрипт, который поменяет цвет прямоугольника с синего на красный.
Ниже приведено, как мог бы выглядеть скрипт примера.
<div id="block" style="color:#fff; background-color: blue; width:150px; height:70px; margin:6px; float:left">
</div>
<button id="start" style="margin:30px 0 0 10px;" onclick="startscript()">Пуск</button>
<-- скрипт AJAX запроса -->
<script type="text/javascript>
function startscript() {
var url = "полный_путь_к_js_скрипту";
$.getScript(url);
}
</script>
путь_к_js_скрипту
«, конечно, заменяется на полный путь к нужному скрипту. echo 'jQuery("#block").css("backgroundColor", "red")';