HTML5调用百度地图API进行地理定位实例

时间:2023-11-17 11:41:50

自从HTML5的标准确定以后,越来越多的网站使用HTML5来进行开发。虽然对HTML5支持的浏览器不是很多,但是依然抵挡不了大伙对HTML5开发的热情。今天为大家带来的是使用HTML5调用百度地图API进行地理定位实例。请看下面代码:

  1. <!DOCTYPE html>
  2. <html>
  3. <title>HTML5调用百度地图API进行地理定位实例</title>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  6. <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=134db1b9cf1f1f2b4427210932b34dcb"></script>
  7. </head>
  8. <body style="margin:50px 10px;">
  9. <div id="status" style="text-align: center"></div>
  10. <div style="width:600px;height:480px;border:1px solid gray;margin:30px auto" id="container"></div>
  11. </body>
  12. </html>
  13. <script type="text/javascript">
  14. //默认地理位置设置为上海市浦东新区
  15. var x=121.48789949,y=31.24916171;
  16. window.onload = function() {
  17. if(navigator.geolocation) {
  18. navigator.geolocation.getCurrentPosition(showPosition);
  19. document.getElementById("status").innerHTML = "HTML5 Geolocation is supported in your browser.";
  20. // 百度地图API功能
  21. var map = new BMap.Map("container");
  22. var point = new BMap.Point(x,y);
  23. map.centerAndZoom(point,12);
  24. var geolocation = new BMap.Geolocation();
  25. geolocation.getCurrentPosition(function(r){
  26. if(this.getStatus() == BMAP_STATUS_SUCCESS){
  27. var mk = new BMap.Marker(r.point);
  28. map.addOverlay(mk);
  29. map.panTo(r.point);
  30. }
  31. else {
  32. alert('failed'+this.getStatus());
  33. }
  34. },{enableHighAccuracy: true})
  35. return;
  36. }
  37. alert("你的浏览器不支持获取地理位置!");
  38. };
  39. function showPosition(position){
  40. x=position.coords.latitude;
  41. y=position.coords.longitude;
  42. }
  43. </script>

看看运行效果:HTML5调用百度地图API进行地理定位实例