Using jquery with Google maps
Download jQuery 1.4.X or higher or use Googles or Microsofts CDN.
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script> <script type="text/javascript" src="PATH_TO_PLUGIN/jquery.ui.map.js"></script> <script type="text/javascript" src="PATH_TO_PLUGIN/jquery.ui.map.extensions.js"></script>
An example of how to extend the plugin with a simple pagination (see jquery.ui.gmap.extensions.js).
( function($) { $.extend($.ui.gmap.prototype, { pagination: function(prop) { var $el = $("<div id='pagination' class='pagination'><div class='back-btn'></div><div class='display'></div><div class='fwd-btn'></div></div>"); var self = this, i = 0, prop = prop || 'title'; self.set('pagination', function(a, b) { if (a) { i = i + b; $el.find('.display').text(self.get('markers')[i][prop]); self.get('map').panTo(self.get('markers')[i].getPosition()); } }); self.get('pagination')(true, 0); $el.find('.back-btn').click(function() { self.get('pagination')((i > 0), -1, this); }); $el.find('.fwd-btn').click(function() { self.get('pagination')((i < self.get('markers').length - 1), 1, this); }); self.addControl($el, google.maps.ControlPosition.TOP_LEFT); } }); } (jQuery) );
After extending the plugin, just add some markers and call $('#map_canvas').gmap('pagination');
$('#map_canvas').gmap({'disableDefaultUI':true,'zoom':5}).bind('init', function(ev, map) { $('#map_canvas').gmap('addMarker', { 'position': '57.7973333,12.0502107', 'title': 'Something to show' } ).click(function() { $('#map_canvas').gmap('openInfoWindow', {'content': this.title}, this); }); }).gmap('pagination');