2012-01-25 133 views
16

,如果有人知道可用一個簡單的腳本,會做的我只是想知道以下座標:獲取緯度/經度從谷歌地圖使用標記

裝載了谷歌地圖的視圖,點擊後會顯示一個標誌物將經緯度和長度值保存到一個變量?

有誰知道這樣的事情是否已經存在於PHP中?

在此先感謝

+0

是的,這是可以實現的。 –

回答

26

也許您正在尋找類似的東西Latitude-Longitude Finder Tool。示例代碼是API v2。下面是一個使用谷歌地圖API V3下調的代碼版本:

var latlng = new google.maps.LatLng(51.4975941, -0.0803232); 
var map = new google.maps.Map(document.getElementById('map'), { 
    center: latlng, 
    zoom: 11, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
}); 
var marker = new google.maps.Marker({ 
    position: latlng, 
    map: map, 
    title: 'Set lat/lon values for this property', 
    draggable: true 
}); 
google.maps.event.addListener(marker, 'dragend', function(a) { 
    console.log(a); 
    // bingo! 
    // a.latLng contains the co-ordinates where the marker was dropped 
}); 

Demo

說明:你必須標記的draggable屬性設置爲true。然後,您可以將回調函數掛鉤到該標記的dragend事件;新的座標傳遞給函數,您可以將它們分配給JavaScript變量或表單域。

+0

這幾乎就在那裏!只需要找出dragend回調的東西歡呼:) – Zabs

+0

一個jsFiddle來了!給我一兩分鐘。 –

+0

真棒會期待它:-)愛你們! – Zabs

5

退房谷歌地圖API第3節。從events page

google.maps.event.addListener(map, 'click', function(event) { 
    // use event.latLng to place a google.maps.Marker 
}); 
6
// add a click event handler to the map object 
    GEvent.addListener(map, "click", function(overlay, latLng) 
    { 
     // display the lat/lng in your form's lat/lng fields 
     document.getElementById("latFld").value = latLng.lat(); 
     document.getElementById("lngFld").value = latLng.lng(); 
    }); 

我認爲,當你將得到的經緯度,然後你可以將標記。

3

我設法到目前爲止以下 - 我怎麼能修改此移動標記的位置,當我點擊地圖

http://jsfiddle.net/ZW9jP/

我已經添加上的任何位置以下,但它似乎沒有做任何東西

google.maps.event.addListener(map, 'click', function(event) { 
    addMarker(event.latLng); 
}); 
3

下面的代碼工作得很好

var latlng = new google.maps.LatLng(51.4975941, -0.0803232); 
var map = new google.maps.Map(document.getElementById('map'), { 
    center: latlng, 
    zoom: 11, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
}); 
var marker = new google.maps.Marker({ 
    position: latlng, 
    map: map, 
    title: 'Set lat/lon values for this property', 
    draggable: true 
}); 

google.maps.event.addListener(marker, 'dragend', function (event) { 
    document.getElementById("latbox").value = this.getPosition().lat(); 
    document.getElementById("lngbox").value = this.getPosition().lng(); 
}); 
相關問題