Это может быть очень простой и начинающий вопрос, и я даже не уверен, что виноват асинхронный вызов. Но все равно ...
Я использую jQuery и его функцию для добавления внешних скриптов в файл .php.
Во-первых, давайте посмотрим на мои внешние JS. (test.js):
function testFunc () {
alert('It works!');
}
Тогда у меня есть .php файл с этим скриптом:
<script>
$.getScript('supervisor/cache/test.js');
$(document).ready(function() {
testFunc();
});
</script>
При использовании этого метода testFunc();
не вызывается. Я попытался вставить return
перед вызовом, поместить его вне функции ready
, поместить $.getScript
в функцию ready
. Ну, я не знаю, что еще попробовать.
Кроме того, если я вызову эту же функцию с помощью onClick
в кнопке, она будет работать.
Вот почему я думаю, что проблема может быть в асинхронном вызове из jQuery, который выполняет мою функцию до того, как скрипт действительно будет добавлен. Но кто знает? У кого-нибудь была такая же проблема раньше?