google-maps-api: observe events in controls
This will observe the click-event on the pan-control
HTML
<script type="text/javascript" src="//maps.googleapis.com/maps/api/js?sensor=false&libraries=places"></script>
<div id="map_canvas"></div>
CSS
#map_canvas {
height: 400px;
width: 600px;
}
JavaScript
var map;
function initialize() {
var myOptions = {
zoom: 8,
center: new google.maps.LatLng(-34.397, 150.644),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('map_canvas'),
myOptions);
google.maps.event.addDomListener(map.getDiv(),'click',
function(e)
{
var t=e.target,
a=[null,'left','right','up','down'];
if(
t.parentNode.parentNode.hasAttribute('controlwidth')
&&
t.parentNode.childNodes.length==5
&&
t.parentNode.firstChild.tagName=='IMG'
&&
t.parentNode.firstChild.src=="http://maps.gstatic.com/mapfiles/mapcontrols3d7.png"
)
{
for(var i=1;i<t.parentNode.childNodes.length;++i)
{
if(t.parentNode.childNodes[i]==t)
{
alert('You\'ve clicked on \n>>>'+a[i]+'\nyou may call a function now.');
}
}
}
});
}
google.maps.event.addDomListener(window, 'load', initialize);