0
我想創建的是「點擊」事件,用戶在地圖上放置標記,旁邊如果用戶想更改標記位置用戶可以將標記拖動到他們想要的位置。但dragstart和dragend不伎倆,我不明白爲什麼......dragend,dragstart和「Uncaught TypeError:無法讀取屬性'_e3」錯誤
和「未捕獲TypeError:無法讀取屬性」我已經嘗試了幾種方法來解決它,但仍然無法設法....所以大家任何想法如何解決它?您的幫助表示讚賞謝謝
<script type="text/javascript">
var map;
var geocoder;
var marker;
var mapOptions
function initialize() {
mapOptions = {
center: new google.maps.LatLng(3.1597,101.7000),
zoom: 12,
disableDefaultUI: true,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: true,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU,
position: google.maps.ControlPosition.TOP_LEFT
},
};
map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
geocoder = new google.maps.Geocoder();
google.maps.event.addListenerOnce(map, 'click', function(event) {
placeMarker(event.latLng);
});
function placeMarker(location) {
marker = new google.maps.Marker({
position: location,
map: map,
draggable:true
});
}
google.maps.event.addListener(marker, 'dragstart', function(evt){
document.getElementById('current').innerHTML = '<p>Currently dragging marker...</p>';
});
google.maps.event.addListener(marker, 'dragend', function(evt){
document.getElementById('current').innerHTML = '<p>Marker dropped: Current Lat: ' + evt.latLng.lat().toFixed(3) + ' Current Lng: ' + evt.latLng.lng().toFixed(3) + '</p>';
});
}
google.maps.event.addDomListener(window, "load", initialize);
</script>
,以確認dragend和dragstart事件是工作我在我的HTML增加了一個ID,以顯示最新的緯度和經度
<div id="current">Nothing yet...</div>
[dragend和dragstart事件不可能重複\ [Google Map Api V3 \]](http://stackoverflow.com/questions/16039688/dragend-and-dragstart-event-is-not-working- google-map-api-v3) – Halcyon
*我使用dragend和dragstart的原因是從用戶那裏得到最新的lat和lng,latlng將被存儲在數據庫 –
剛刪除舊線程,對不便帶來的不便 –