Trigger event with infoWindow or InfoBox on click Google Map API V3

前端 未结 5 698
遥遥无期
遥遥无期 2020-11-30 08:20

I want to know how to trigger an event when I click on an infoWindow using Google Maps API v3. In this example, when I click on a marker, an info window shows up with a uni

5条回答
  •  忘掉有多难
    2020-11-30 08:26

    The InfoWindow object does not have a 'click' event, so you cannot do

    google.maps.event.addListener(infowindow, 'click',....
    

    instead, you can attach an event handler to the DOM object, such as

    function addMarker(latLng, name){
    
    var marker = new google.maps.Marker({
        map:map,
        position:latLng
    });
    
    G.event.addListener(marker,'click',function(mev){
            var div = document.createElement('div');
            div.innerHTML = name;
            div.onclick = function(){iwClick(name)};
            infoWindow.setContent(div);
            infoWindow.setPosition(mev.latLng);
            infoWindow.open(map);
    
        });
    }
    
    function iwClick(str){
        alert(str);
    };
    

    and you call it with

    var chicago = new google.maps.LatLng(41.850033, -87.6500523);
    addMarker(chicago,'chicago');
    

提交回复
热议问题