私はマーカー付きのGoogleマップを持っています。クリックされると、各マーカーは情報ウィンドウを表示します。 infowindowの中には、いくつかのデータをキューに追加するためのボタンがあります。 [キューに追加]ボタンの最初のクリックでは、一度起動し、2回目のボタンをクリックして2回、3回目をクリックして3回起動します。GoogleマップPopover clickイベントが複数回発生する
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));
}
HELP!ありがとうございました:)
ハズレのために働いを登録
google.maps.event.addListener(marker, 'click', (function(marker, i)
そのようにサイドをそれを移動する必要があります。 – ryan
私はLocベローが正しいかもしれないと思います。クリックリスナーをaddListener関数の外に移動します。私はそれも少し上手くしています。 '.. $(document).ready($( '。show-compare'))をクリックすると、すべて外に移動します。 –
私は移動できませんそれは、クリックイベント内でマーカーデータを使用しているためです。私はクリックしたマーカにアクセスする必要があります – ryan