2013-04-06 63 views
0

我想用包含位置的變量將我的Google地圖地圖上的圖釘放在我的地圖上,當我這樣做時,我的圖釘就可以工作。如何使用變量中的位置獲取Google地圖上的徽章?

var imageDriver = 'marker.png'; 
var DriverLatLng = new google.maps.LatLng(62.446026, 17.331340); 
var driverMarker = new google.maps.Marker({ 
    position: DriverLatLng, 
    map: map, 
    icon: imageDriver, 

但我想用這個方法,以經緯度存儲變量裏面:

var location = "62.446026, 17.331340"; 
var imageDriver = 'marker.png'; 
var DriverLatLng = new google.maps.LatLng(location); 
var driverMarker = new google.maps.Marker({ 
    position: DriverLatLng, 
    map: map, 
    icon: imageDriver, 

當我作爲第二片段中,針只是消失。這是什麼造成的?

感謝

回答

3

google.maps.LatLng()功能並不需要字符串參數。它採用下列參數:

lat : number 
lng : number 
noWrap : boolean // Optional 

這是記錄在這裏:https://developers.google.com/maps/documentation/javascript/reference#LatLng

你可以存儲的緯度和經度這樣:

var location = { 
    lat: 62.446026, 
    lng: 17.331340 
}; 

var imageDriver = 'marker.png'; 
var DriverLatLng = new google.maps.LatLng(location.lat, location.lng); 
var driverMarker = new google.maps.Marker({ 
    position: DriverLatLng, 
    map: map, 
    icon: imageDriver, 
2

google.maps.LatLng()需要2個數值,你想用繩子將其初始化。

您可以將字符串分割成數組,然後解析數組作爲浮動長和緯度值內兩個字符串:

location = location.split(','); 
var DriverLatLng = new google.maps.LatLng(parseFloat(location[0]),parseFloat(location[1])); 
.... 
1

的問題是,你提供你的經緯度第二個實例中的構造函數帶有一個字符串。這是不正確的,不會工作 - 這就是爲什麼你沒有看到銷。首先,你給它兩個好數字。

您可以在這裏看到的文檔:https://developers.google.com/maps/documentation/javascript/reference#LatLng

做你想做什麼,你可以有兩個變量(這是數字):

var locationLat = 62.446026; 
var locationLng = 17.331340; 
var DriverLatLng = new google.maps.LatLng(locationLat,locationLng); 

...或者你可以做類似他們已經完成了這個答案: Convert String to latlng google maps,如果你決定保持你的緯度和經度在一個字符串。
...或者你可以創建一個新的對象,並將它分配給它,如果你想要一個變量:
var myLatLng = new Object(); 
myLatLng.lat = 62.446026; 
myLatLng.lng = 17.331340; 

...或者,構建谷歌LatLng對象,你可以得到lat和lng後來是這樣的:

var myLatLng = new google.maps.LatLng(62.446026, 17.331340); 
// some other stuff here 
var myStringLatLng = myLatLng.lat() + ',' + myLatLng.lng(); 

我想最好的選擇取決於你想要做什麼!

+0

rrowland構建對象的方式更好,olsn的字符串分割方法更好:) – GHC 2013-04-06 17:05:40

相關問題