Ответ 1
//wait for document.ready to fire
$(function () {
//then load the JavaScript file
$.getScript('script.js');
});
http://api.jquery.com/jquery.getscript
//create a callback function
function myCallback () {
//create a script element and set it type and async attributes
var script = document.createElement('script'); script.type = 'text/javascript'; script.async = true;
//set the source of the script element
script.src = 'script.js';
//add the script element to the DOM
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(script, s);
}
//add event listener for the deviceready function to run our callback function
document.addEventListener("deviceready", myCallback, false);
http://docs.phonegap.com/en/1.4.1/phonegap_events_events.md.html#deviceready
Этот второй фрагмент кода представляет собой слегка измененную версию кода Google Analytics, используемую для добавления a script в DOM асинхронно.
UPDATE
Вы также можете установить атрибут defer
тега <script>
на true
, и он не будет выполнен до тех пор, пока не будет подготовлен DOM. Смотрите следующую документацию: https://developer.mozilla.org/en-US/docs/HTML/Element/Script