If you are not satisfied with default Google map Marker (Default google marker can only be a icon, image or shape),
for example adding a border, then you should use richmarker!
http://google-maps-utility-library-v3.googlecode.com/svn/trunk/richmarker/
Inside richmarker:
RickMarker extends from google.maps.OverlayView
RichMarker.prototype.onAdd
? ? ?
? ? ?var panes = this.getPanes();//Returns the panes in which this OverlayView can be rendered. The panes are not initialized until?onAdd?is
called by the API.
? ? ?panes.overlayMouseTarget.appendChild();//This pane contains elements that receive DOM mouse events, such as the
transparent targets for markers. It is above the floatShadow, so that markers in the shadow of the info window can be clickable. (Pane 5).
RichMarker.prototype.draw
? ? ? ?var projection = this.getProjection(); //Returns the?MapCanvasProjection?object
associated with this?OverlayView. The projection is not initialized until?onAdd?is
called by the API.
? ? ? ?var latLng = (this.get(‘position‘));
? ? ? ?var pos =?projection.fromLatLngToDivPixel(latLng);//Computes the pixel coordinates of the given geographical
location in the DOM element that holds the draggable map.
? ? ? ?var offset = this.getOffset_();
? ? ? ?this.markerWrapper_.style[‘top‘] = (pos.y + offset.height) + ‘px‘;
? ? ? ?this.markerWrapper_.style[‘left‘] = (pos.x + offset.width) + ‘px‘;