5

我想在另一个事件中触发标记的 dragend 事件,比如地图上的单击事件。我怎样才能做到这一点?

google.maps.event.addListener(map,'click',function(pt){
   posSelectMarker.setPosition(pt.latLng);
   //这里我想触发dragend事件。
});
4

4 回答 4

9

使用event.trigger

google.maps.event.trigger(markerObject, 'dragend', args);
于 2010-06-26T10:49:36.027 回答
8

这是更完整的一点:

theListener = google.maps.event.addListener(posSelectMarker,'dragend',function(event){
    console.log(event.latLng);
});

请注意,您可以使用事件参数获取对象

于 2013-01-09T18:47:11.743 回答
1

应该:

google.maps.event.addListener

代替:

google.maps.event.trigger

快速示例:

google.maps.event.addListener(marker_var_name, 'dragend', function(){
    alert('drag ended')
});
于 2012-08-20T15:31:43.343 回答
1

如果您有标记对象,则可以addListener直接调用以添加dragend事件。

var marker = new google.maps.Marker({
    ...
)};

marker.addListener('dragend', function() {
    // do something
});
于 2016-06-04T18:20:04.257 回答