Надеюсь, это поможет кому-то еще. У меня были те же проблемы с попыткой загрузить географическое местоположение через API Карт Google в многостраничном приложении PhoneGap + JQM. SetInterval / setTimer также не работает. Единственный способ заставить его работать, это также сделать полное обновление, вроде как приложение выглядит испорченным.
onDeviceReady у меня тоже не сработало, так как геолокация не была вызвана в файле index.html
Мое решение состояло в том, чтобы не пытаться вызывать геолокацию при загрузке вида / страницы геолокации. Вместо этого вставьте кнопку для вызова скрипта:
<a href="#" onclick="getLocation();" data-role="button">Get My Location</a>
Затем вызовите API геолокации с Javascript, присоединенным к getLocation ()
function getLocation() {
navigator.geolocation.getCurrentPosition(onSuccess ,onError,
{ timeout: 10000, enableHighAccuracy: true } );
var lat;
var lng;
}