根据IP定位在谷歌地图的位置

<!DOCTYPE html> 
<html> 
<head> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
<title>Google Maps JavaScript API v3 Example: Map Geolocation</title> 
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script> 
<script type="text/javascript" src="http://code.google.com/apis/gears/gears_init.js"></script> 
<script type="text/javascript"> 

var initialLocation; 
var siberia = new google.maps.LatLng(60, 105); 
var newyork = new google.maps.LatLng(40.69847032728747, -73.9514422416687); 
var browserSupportFlag =   new Boolean(); 
var map; 
var infowindow = new google.maps.InfoWindow(); 
   
function initialize() { 
  var myOptions = { 
    zoom: 6, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
  }; 
  map = new google.maps.Map(document.getElementByIdx_x("map_canvas"), myOptions); 
   
  // Try W3C Geolocation method (Preferred) 
  if(navigator.geolocation) { 
    browserSupportFlag = true; 
    navigator.geolocation.getCurrentPosition(function(position) { 
      initialLocation = new google.maps.LatLng(position.coords.latitude,position.coords.longitude); 
      contentString = "Location found using W3C standard"; 
      map.setCenter(initialLocation); 
      infowindow.setContent(contentString); 
      infowindow.setPosition(initialLocation); 
      infowindow.open(map); 
    }, function() { 
      handleNoGeolocation(browserSupportFlag); 
    }); 
  } else if (google.gears) { 
    // Try Google Gears Geolocation 
    browserSupportFlag = true; 
    var geo = google.gears.factory.create('beta.geolocation'); 
    geo.getCurrentPosition(function(position) { 
      initialLocation = new google.maps.LatLng(position.latitude,position.longitude); 
      contentString = "Location found using Google Gears"; 
      map.setCenter(initialLocation); 
      infowindow.setContent(contentString); 
      infowindow.setPosition(initialLocation); 
      infowindow.open(map); 
    }, function() { 
      handleNoGeolocation(browserSupportFlag); 
    }); 
  } else { 
    // Browser doesn't support Geolocation 
    browserSupportFlag = false; 
    handleNoGeolocation(browserSupportFlag); 
 
   

function handleNoGeolocation(errorFlag) { 
  if (errorFlag == true) { 
    initialLocation = newyork; 
    contentString = "Error: The Geolocation service failed."; 
  } else { 
    initialLocation = siberia; 
    contentString = "Error: Your browser doesn't support geolocation. Are you in Siberia?"; 
 
  map.setCenter(initialLocation); 
  infowindow.setContent(contentString); 
  infowindow.setPosition(initialLocation); 
  infowindow.open(map); 
   
</script> 
</head> 
<body οnlοad="initialize()"> 
  <div id="map_canvas"></div> 

</body> 
</html>   
 
 
 
 
 
 
 
 
   

 
 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值