После большого количества исследований я решаю эту проблему с подсказкой ofir_aghai ответа о событии загрузки скрипта.
В основном нам нужно использовать $ для кода JQuery, но мы не можем использовать его, пока не будет загружен JQuery. Я использовал document.createElement для добавления скрипта для JQuery, но проблема в том, что загрузка занимает некоторое время, пока следующий оператор в javascript, использующий $ fails. Поэтому я использовал приведенное ниже решение.
myscript.js имеет код, который использует JQuery
main.js используется для загрузки как файла jquery js, так и файла myscript.js, обеспечивающего загрузку jquery.
код main.js
window.load = loadJQueryFile();
var heads = document.getElementsByTagName('head');
function loadJQueryFile(){
var jqueryScript=document.createElement('script');
jqueryScript.setAttribute("type","text/javascript");
jqueryScript.setAttribute("src", "/js/jquery.min.js");
jqueryScript.onreadystatechange = handler;
jqueryScript.onload = handler;
heads[0].appendChild(jqueryScript);
}
function handler(){
var myScriptFile=document.createElement('script');
myScriptFile.setAttribute("type","text/javascript");
myScriptFile.setAttribute("src", "myscript.js");
heads[0].appendChild(myScriptFile);
}
Таким образом, это работало. Использование loadJQueryFile () из myscript.js не сработало. Это немедленно идет к следующему утверждению, которое использует $.