Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Узнать о полной загрузке подключаемого скрипта (https://javascript.ru/forum/misc/41692-uznat-o-polnojj-zagruzke-podklyuchaemogo-skripta.html)

memba 25.09.2013 15:46

Узнать о полной загрузке подключаемого скрипта
 
Добрый день!

Подгружаю страницу сайта через Ajax в котором подключается сторонний скрипт (recaptcha)

Как узнать что он полностью загружен перед обращением к его функционалу? К сожалению элементов script нет события onload.

Вообщем подгружаемые данные выглядят так:

<script type="text/javascript" src="http://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>
		 
<div id="recaptcha">ТУТ БУДЕТ RECAPTCHA</div>
		
<script type="text/javascript">
	Recaptcha.create("pyblic_key", "recaptcha", {
	 theme: "red"});
	})
</script>


Из-за того что для загрузки recaptcha_ajax.js требуется время - Recaptcha.create просто не срабатывает.

ruslan_mart 25.09.2013 15:50

Цитата:

Сообщение от memba
Recaptcha.create просто не срабатывает.

Потому что у Вас тут синтаксическая ошибка.

Можно AJAX'ом получить содержимое "recaptcha_ajax.js" как строку и загнать её в eval().

memba 25.09.2013 16:04

С Recaptcha.create я тут опечатался.

Дело не в подгрузке скриптов, а в том как узнать грузился он или нет.

recaptcha_ajax.js содержит объект Recaptcha

Пока recaptcha_ajax.js загружается, Recaptcha.create уже пытается выполнится. Нужно что-бы вначале загрузился recaptcha_ajax.js, а уже потом выполнялись дальнейшие действия.

memba 25.09.2013 16:17

Снимаю вопрос.

Подгружаю используя jQuery

$.getScript('http://www.google.com/recaptcha/api/js/recaptcha_ajax.js', function() {
	Recaptcha.create("pyblic_key", 
	"recaptcha", {
	theme: "red"
	});
});


Часовой пояс GMT +3, время: 08:06.