我在谷歌地图中有一个标记。我使用此标记来检索坐标并在表单中更新lat和long。当用户删除标记 strong>时,我会读取坐标。我的代码如下:
$wnd.marker = new google.maps.Marker(
{
map : $wnd.map,
draggable : true,
icon : "/gmapsMarker.png",
iconShadow : "/gmapsMarkerShadow.png",
position : defaultPosition,
clickable : true
});
var toggleBounce = function(e) {
var lat = $wnd.marker.position.lat();
var lng = $wnd.marker.position.lng();
update(lat,lng,false);
}.bind(this);
google.maps.event.addListener($wnd.marker, 'dragend', toggleBounce);
有什么问题?
奇怪的是, Internet Explorer 7,8和9 没有问题。
在 chrome 和 firefox 中,拖动标记后出现问题。如果我移动鼠标太快指针超出标记的边界框,标记卡住。我需要释放鼠标点击,再次拖动de marker并将其放在我最喜欢的位置。
任何建议?
我尝试使用类似结果的“mouseup”事件。
答案 0 :(得分:2)
这可能对您有所帮助
google.maps.event.addListener($wnd.marker, 'dragend', function() {
// Get the Current position, where the pointer was dropped
var point = $wnd.marker.getPosition();
// Center the map at given point
$wnd.map.panTo(point);
// Update
update(point.lat(), point.lng(),false);
});
You may like this(您可以下载演示版,只需8kb,direct download link)。