У меня есть следующий код, который загружает некоторый javascript, а затем вызывает метод из загруженного javascript:
var knackCustomApiLocation = " https://c9.io/xxx/xxx/xx/js/xx.js ";
$.getScript(knackCustomApiLocation).done(function( script, textStatus ) {
alert($.fn.jquery);
createRecords(context);
})
Версия печатает отлично для первого предупреждения, но я также пытаюсь напечатать версию в методе createRecords:
function createRecords(context){
alert($.fn.jquery);
createNewQuotationsForEachUnderwriter(context);
}
Я получаю: 'Uncaught TypeError: Не могу прочитать свойство' fn 'undefined'
поэтому явно jquery не входит в объем загружаемого скрипта, но не уверен, как его исправить, так что вызываемый javascript действительно имеет доступ к jquery и относится ли это к вопросам перекрестного домена или нет.
Спасибо,
отметка
Спасибо всем за помощь, это было именно то, что мне нужно.
Да, похоже, что с учетом среды, в которой я работаю, jquery не был определен на глобальном уровне. Как только я определил jquery как глобальную переменную, все сработало.
window.$ = $;
Не уверен, что это подход наилучшей практики, однако предложения приветствуются!
window.$
. Не много вы могли бы сделать с этим все же.
$.getScript
? Что даетalert(window.$.fn.jquery)
? Это не междоменная проблема, вы можете удалить ее из заголовка / вопроса.alert(jQuery.fn.jquery);
, Если это проблема области действия, вам нужно будет предоставить немного больше информации, чем пара небольших фрагментов кода.