您的位置:首页 > 其它

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

2013-10-10 16:52 253 查看
<!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
onload="initialize()"> 
  <div
id="map_canvas"></div> 

</body> 

</html>  
 
 
 
 
 
 
 
 
   

 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: