How to "simulate" a click on a Google Maps Marker?

markzzz picture markzzz · Feb 8, 2012 · Viewed 17.5k times · Source

What I'd like to do is to invoke the click handler on a marker. So this is my code :

var marker = new google.maps.Marker({
    position: location,
    map: map,
    title: title
});    

google.maps.event.addListener(marker, 'click', function() {
    alert("clicked");
});        

marker.click();

but I cannot see any alert...

Answer

Chris Broadfoot picture Chris Broadfoot · Feb 8, 2012

It's possible to trigger any Maps API event listener on any object using the google.maps.event.trigger function.

You'll probably want to pass in a mock MouseEvent object, depending on what your event listener(s) do with it.

Example:

google.maps.event.trigger(marker, 'click', {
  latLng: new google.maps.LatLng(0, 0)
});