2012-01-18 100 views
0

我已經創建了jQuery的應用程序和谷歌地圖的JavaScript V3,其中我是一個按鈕,點擊後顯示用戶的當前位置。當前位置需要jQuery的頁面刷新移動

現在的問題是有時我搞得非常精細的當前位置,有時在同一個地方它顯示我的當前位置英里,可是當我再次刷新頁面,我再次得到了相當精細的當前位置。

沒有人知道如何擺脫掉再按刷新按鈕,因此用戶不會一直按自己的手機瀏覽器的刷新?

注: 我測試的Android手機這個應用程序具有默認的瀏覽器。

頁面#1有一個按鈕,Page#2有一個映射,但頁面#1和頁面#2合併在一個單獨的 jQuery HTML頁面中。

+0

爲什麼不創建一個函數,它會使用setTimeout調用自己,並在裏面放置代碼以獲取您的位置? – tftd 2012-01-18 13:41:40

+0

我試過setTimeOut但這並不能解決我的問題 – Hunt 2012-01-18 16:29:32

回答

0

你爲什麼不嘗試添加使用精度參數關閉地理位置對象(position.coords.accuracy)一些邏輯。例如,

//if accuracy is to low 
if (position.coords.accuracy =< 500) { 
    //redo the geolocation 
    navigator.geolocation.getCurrentPosition(function(position) { 
    //update marker 
    marker.setPosition(new google.maps.LatLng(position.coords.latitude, position.coords.longitude)}) 
} 
, displayError); 
} 
+0

我是否需要在外側getCurrentPosition中寫上面的代碼? – Hunt 2012-01-18 17:18:34

+0

配合,因爲它現在讀,這個邏輯應該是在一個函數傳遞的位置對象,因此考慮地理位置成功回調函數。但是,這只是一個例子,將來你的目標應當是1種地理定位功能,這就是所謂severel倍.. – jenswirf 2012-01-19 07:07:03

+0

有時精度太高,顯示我的位置很遠那麼,有沒有一種固定的方式來設置N個較低的接近度 – Hunt 2012-01-19 12:39:48