2012-02-20 170 views
0

我想使用此代碼加載經緯度值,但負載時的錯誤,我收回此錯誤:JavaScript的緯度和經度

Uncaught ReferenceError: position is not defined 
(anonymous function) 

這裏是我的html頭使用的代碼:

<script src="http://maps.google.com/maps/api/js?sensor=true"></script> 
<script type="text/javascript"> 

    $(document).ready(function(){ 
     get_location(); 
    }); 

    function get_location() 
    { 
     if(navigator.geolocation) 
     { 
      navigator.geolocation.getCurrentPosition(function(position){ 

        var latitude = position.coords.latitude; 
        var longitude = position.coords.longitude; 

      }); 
     } 
    } 

    console.log(position.coords); 
</script> 

我忘了什麼嗎?

+2

我認爲你需要一個位置參數,即添加到回調函數getCurrentPosition(函數(位置){... – Dampsquid 2012-02-20 19:04:09

+0

我添加了位置,但是當我嘗試console.log(position.coords)時,我得到了Uncaught ReferenceError:position沒有定義 (匿名函數) – 2012-02-20 19:08:06

+0

如果位置仍然未定義,也許該API無法獲取您的位置,請嘗試添加第二個錯誤回調,看看是否被調用,順便說一句,我只是用谷歌搜索,我不知道谷歌地圖API只與openmaps一起玩。 – Dampsquid 2012-02-20 19:16:06

回答

1
navigator.geolocation.getCurrentPosition(function(){...} 

必須

navigator.geolocation.getCurrentPosition(function(position){...} 

您可以添加回調errorHandle得到的errorCode

更多信息http://dev.w3.org/geo/api/spec-source.html#geolocation

+0

我糾正了它......但正如我評論說,我收到另一個錯誤...一些想法? – 2012-02-20 19:10:56

+0

好的問題解決了...一切正常。 – 2012-02-20 19:15:41