我有一個帶有標記的谷歌地圖。點擊時每個標記顯示一個infowindow。 infowindow內部是一個按鈕,用於將一些數據添加到隊列中。在第一次點擊添加到隊列按鈕時,它會觸發一次,點擊第二個按鈕它會觸發兩次,點擊第三個按鈕,然後觸發三次,依此類推。谷歌地圖Popover點擊事件多次觸發
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
$('.show-compare').popover('destroy');
infowindow.setContent('<div class="add-wrapper"><div class="show-compare" data-toggle="popover" data-placement="top" data-content="Add to compare basket">CLICK ME</div></div>);
infowindow.setOptions({maxWidth: 200});
infowindow.open(map, marker);
$('body').on("click", '.show-compare', function(e) {
e.preventDefault();
alert();//this fires x times, only should fire once per click!!
}
}) (marker, i));
}
幫助!謝謝:)
沒了,還在射擊多次。 – ryan
我認爲Loc波紋管可能是正確的。將addListener函數外部的click監聽器移動。我會讓它更好一點。 $(document.ready)($('。show-compare')。click(function(e){e.preventDefault(); alert()}))'..並且把它移到一切之外 –
我不能移動它在外面,因爲即時通訊在點擊事件中使用標記數據。我需要訪問我點擊的標記 – ryan