1
在我的应用程序用户创建标记,当他点击地图。所以像这样的代码:谷歌地图API:强制地图不处理单击信息框内
function placeMarker(map, location) {
var marker = new google.maps.Marker({
position: location,
map: map
//other...
var infowindow = new google.maps.InfoWindow({
content: ballon.get(0)
});
ballon.find("#delete-btn").click(function(){
infowindow.close();
$mapPreview.data("markers")[id].marker.setMap(null);
delete $this.data("markers")[id];
});
});
"#delete-btn"
里面infowindow
。问题是当用户点击"#delete-btn"
时,他还在地图上创建了新的标记。我怎样才能避免这种情况?
谢谢,我会尽快接受 – xander27 2012-08-14 04:53:15
这也适用于IE?我曾经做过不同的事情,一个用于真正的浏览器,另一个用于IE,例如:function(ev)\t \t try {ev.stopPropagation()} catch(e){event.cancelBubble = true}; – Marcelo 2012-08-14 07:33:55
@Marcelo - 是的,它会在IE中工作。你实际上得到了一个jQuery事件,而不是浏览器事件,并且jQuery将'e.preventDefault()'/'e.stopPropagation() – ahren 2012-08-14 08:55:27