2013-11-09 49 views
0

我想讓這個腳本可用於傳單庫libary以使用openstreetmap。 我需要一個可拖動的標記存儲它的座標,並在dragend發送它到一個隱藏的窗體,將發送到我的sqlite數據庫! 即時通訊編碼不太好!幫助非常感謝有人可以將此google.api翻譯成傳單腳本嗎?

 marker = new google.maps.Marker({ 
      map:map, 
      draggable:true, 
      animation: google.maps.Animation.DROP, 
      position: mapCenter, 
      title: markerTitle, 
      icon: markerImage 
     }); 
     google.maps.event.addListener(marker, 'dragend', function() { 
      updateLatLong(); 
     }); 
     google.maps.event.addListener(map, 'click', function(event) { 
      var myLatLng = event.latLng; 
      var markerPosition = new google.maps.LatLng(myLatLng.lat(), myLatLng.lng()); 
      marker.setPosition(markerPosition); 
      updateLatLong(); 
     }); 
     updateLatLong(); 
    } 

    function updateLatLong() { 
     var lat = marker.getPosition().lat(); 
     var lng = marker.getPosition().lng(); 
     document.getElementById("nexthh_latitude").value = lat; 
     document.getElementById("nexthh_longitude").value = lng; 
    } 
+1

您需要顯示對任務的基本理解,並提供嘗試解決它的結果,例如,您遇到的錯誤。 – arkonautom

回答

2

它應該是這樣的

var map = L.map();//Set your map options 
    markerImage = L.icon.Default(); //Change this with your icon options. 
    var marker = L.marker({ 
     draggable:true, 
     position: map.getCenter(), 
     title: markerTitle, 
     icon: markerImage 
    }); 
    marker.addTo(map); 
    marker.on('dragend',function() { 
     updateLatLong(); 
    }); 
    map.on('click',function(event) { 
     marker.setLatLng(event.latLng); 
     updateLatLong(); 
    }); 

function updateLatLong() { 
    var lat = marker.getLatLng().lat; 
    var lng = marker.getLatLng().lng; 
    document.getElementById("nexthh_latitude").value = lat; 
    document.getElementById("nexthh_longitude").value = lng; 
} 

Lealfet這裏有極好的文檔http://leafletjs.com/reference.html

1

THX的幫助! 我是這樣寫的: var map = L.mapbox.map('map','examples.map-9ijuk24y') .setView([48.20682894891699,16.370315551757812],12);

var marker = L.marker([48.20682894891699, 16.370315551757812],{ 
     draggable: 'true', 
    }).addTo(map); 

    marker.on('dragend', function(event) { 
     var marker = event.target; 
     var lat = marker.getLatLng().lat; 
     var lon = marker.getLatLng().lng; 
     document.getElementById("latitude").value = lat; 
     document.getElementById("longitude").value = lon; 
    }); 
相關問題