Я использую PhoneGap + jQuery Mobile в Android, я путаюсь о функциях Phonegap onBodyLoad()/onDeviceReady() и JQuery "$ (document).ready()".
В документах PhoneGap:
PhoneGap состоит из двух базовых кодов: родной и JavaScript. В то время нативный код загружается, пользовательский отображается загрузочное изображение. Однако, JavaScript загружается только после DOM грузы. Это означает, что ваше веб-приложение может, потенциально, вызвать PhoneGap Функция JavaScript перед тем, как загружен.
Событие PhoneGap deviceready срабатывает когда PhoneGap полностью загружен. После устройство уволилось, вы можете безопасно совершает вызовы функции PhoneGap.
Как правило, вы захотите прослушиватель событий с document.addEventListener после Документ HTML DOM загружен.
В jQuery doc:
Пока JavaScript предоставляет нагрузку событие для выполнения кода, когда страница, это событие не получается срабатывает до тех пор, пока все активы, такие как изображения были полностью получены. В большинстве случаев может выполняться scriptкак только иерархия DOM полностью построенный. Обработчик прошел toready() гарантированно будет выполняется после того, как DOM готов, поэтому это, как правило, лучшее место для присоединить все другие обработчики событий и запустить другой код jQuery. Когда используешь скрипты, которые полагаются на значение CSS свойства стиля, важно ссылки на внешние таблицы стилей или вставлять элементы стиля до ссылаясь на сценарии.
В случаях, когда код полагается на загруженный активов (например, если размеры изображения требуется), код следует поместить в обработчик для вместо этого загрузите событие.
Мои эксперименты показывают, что ready() всегда раньше, чем onDeviceReady(), как это объяснить? Как их использовать? Должен ли я поставить ready() в onDeviceReady(), чтобы сделать каждый вызов безопасным?
Спасибо заранее.
С уважением, Крис