javascript - Google Maps API v3 binding events to multiple maps -


i've got page 2 google maps on, using v3 api. have 1 pin each, same lat & long set each pin, although 1 of maps have other pins added @ later date (when can work!) maps generated looping through object, further maps can added if needed.

what trying bind bounds_changed event once both maps, run map.setzoom() after map.fitbounds() has been run. event, however, binds last map set up, not reset zoom on first map.

link jsfiddle replicating issue: http://jsfiddle.net/pkhb8mvz/7/

(for more clear example of event being bound to, change event listen on click rather bounds_changed try clicking on first map , watch zoom level change on second map)

any appreciated!

the problem map variable being redefined on each iteration of loop, time event listener callback runs operate on second google.maps.map object. simplest solution capture value of map variable on each iteration using closure, so:

(function (map) {     var listener = new google.maps.event.addlisteneronce(map, "bounds_changed", function () {         if (!opts.center) {             map.setzoom(opts.zoom);         };     }); }) (map); 

i forked jsfiddle demonstrate idea: https://jsfiddle.net/e8qbr8ql/


Comments

Popular posts from this blog

c++ - No viable overloaded operator for references a map -

java - Custom OutputStreamAppender not run: LOGBACK: No context given for <MYAPPENDER> -

java - Cannot secure connection using TLS -