Oh, why didn't I think of that myself? Thank you very much, I think
that this is exactly what I need!

On Jul 26, 11:17 am, Marcelo <[email protected]> wrote:
> It's probably not too heavy and it is common practice, but if you
> prefer it you can use a single named function, like:
>
> function createMarker(latlon,markerId) {
>   var marker = new google.maps.Marker({position: latlon, ... etc.
>   marker.myMarkerId = markerId;
>   google.maps.event.addListener(marker, 'click', function()
> {markerClick(this)});
>   return marker;
>
> }
>
> function markerClick (clickedMarker) {
>   var markerId = clickedMarker.myMarkerId;
>   // Do something with markerId
>
> }
>
> In the scope of the event handler function the marker itself is the
> variable 'this'.
> That's similar to the map event handlers 
> here:http://maps.forum.nu/gm_maps_in_sync.html
> Note that one single function handles events of the same type for all
> maps.
>
> --
> Marcelo -http://maps.forum.nu
> --
>
> On Jul 26, 8:25 am, zinigor <[email protected]> wrote:
>
> > Hello! I am using Google Maps V3, and I have the following question.
>
> > I understand that if I have multiple markers on a map, and I need to
> > handle clicks on them, I have to set up a handler for each marker like
> > so:
>
> > // ...
> > var marker = new google.maps.Marker({position: new
> > google.maps.LatLng(55, 37)});
> > marker.setMap(map);
> > var listener = google.maps.event.addListener(marker, 'click',
> > function(event){
> >     // my listener handler here
>
> > });
>
> > But if I have a lot of markers, wouldn't it bee too heavy? Can I
> > somehow set one handler and figure out which marker was clicked inside
> > it? Like:
>
> > // ...
> > var listener = google.maps.event.addListener(map, 'click',
> > function(event){
> >     var target = event.target; // Click target
>
> > });

-- 
You received this message because you are subscribed to the Google Groups 
"Google Maps JavaScript API v3" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-maps-js-api-v3?hl=en.

Reply via email to