W3C Geolocation, Bing Maps and HTML 5 Canvas
This code uses the W3C's Geolocation API in conjunction with Bing Maps and HTML 5 Canvas.
<!DOCTYPE HTML> <html> <head> <title>HTML5 page</title> <!--link rel="stylesheet" type="text/css" href="site.css"/--> <style type="text/css"> #baseDiv {position:relative; width:80%; left:10%; border:1px solid;} </style> </head> <body> <div id="baseDiv"> <canvas id="stage" width="600" height="600">Sorry, your browser does not support the canvas tag.</canvas> </div> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.js"></script> <script type="text/javascript"> //<![CDATA[ var lineHeight = 14; jQuery(function() { navigator.geolocation.getCurrentPosition(showPosition); }); function showPosition(position) { var ctx = document.getElementById('stage').getContext('2d'), txt = 'This is a string of text', x = 10, y = lineHeight, maxWidth = 50, lat = position.coords.latitude, lon = position.coords.longitude; ctx.font = '12pt Courier New'; ctx.fillText('latitude: ' + lat, x, y); y += lineHeight; ctx.fillText('longitude: ' + lon, x, y); y += lineHeight; var img = new Image(), url = 'http://dev.virtualearth.net/REST/v1/Imagery/Map/Road/' + lat + ',' + lon + '/15' + '?mapSize=400,400' + '&pushpin=' + lat + ',' + lon + '&mapLayer=trafficFlow' + '&key=XXXXXXXXXXXXXXXXXX'; jQuery(img).bind('load', function() { ctx.drawImage(img, x, y); }); img.src = url; } //]]> </script> </body> </html>
Re: W3C Geolocation, Bing Maps and HTML 5 Canvas
That's fair criticism - for this limited sample jQuery is not particularly necessary, but it sure is convenient for cross-browser event binding, and jQuery IS Javascript after all...
I happen to be working on a project where jQuery is already on the page, so there is no extra overhead. Why would I not use it? Why would I duplicate code that's already handled by jQuery?