简体   繁体   中英

how to redraw markers without redrawing the map? google maps

I currently have a implementation where some markers coming from JSON list is shown, on a particular area, Now I want to filter these marker depending upon some criteria, I have done the filtering part, and got the filtered list. Now to render this markers on the map again, The current implementation loads the js with a key again, also creates the GMap2 object and draws the list of marker on the newly created map, which is really annoying. I want map to be there and only markers to be added and removed from the map. Any help is appreciated

You can use addOverlay and removeOverlay to add/remove markers from an already displayed map. See the examples here: http://code.google.com/apis/maps/documentation/overlays.html#Markers

var latlng = new GLatLng(lat, lng);
map.addOverlay(new GMarker(latlng));

You can make drawMap() and drawMarkers() as two separate functions. And after map has been created redefine drawMap to empty function like this: drawMap = function(){}; After that only drawMarkers() will be executed.

Hope this is what you need. If not, provide some code.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM