map.js: 定位,下面这个小demo,可以精确到市
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>map</title>
<style>
#pos{
text-align: center;
}
#container{
width: 600px;
height: 480px;
margin: 30px auto;
border: 1px solid gray;
text-align: center;
}
</style>
<script type="text/javascript" src="js/map.js"></script>
</head>
<body>
<div id="pos"></div>
<div id="container"></div>
<script type="text/javascript">
//检查浏览器是否支持定位
function check(){
if(navigator.geolocation) alert("支持定位!");
else alert("不支持定位!");
}
//check();
window.onload = function(){
var x,y;
if (navigator.geolocation) {
//百度API功能
var map = new BMap.Map("container");
//地图中心点
var point = new BMap.Point(x,y);
//地图初始化,参数一: 中心点坐标 参数二: 地图缩放等级(百度为1~17)
map.centerAndZoom(point,12);
var geolocation = new BMap.Geolocation();//可精确到市
geolocation.getCurrentPosition(function(r){
//检索成功的状态
if (this.getStatus() == BMAP_STATUS_SUCCESS) {
//当前位置坐标
var mk = new BMap.Marker(r.point);
//addOverlay(): 使用添加图层的方法, 将当前坐标覆盖到地图, mk代表当前坐标
map.addOverlay(mk);
//将地图中心位置移动到当前坐标
map.panTo(r.point);
document.getElementById("pos").innerHTML = "您当前的位置: 经度" + r.point.lng +", 纬度" + r.point.lat;
} else{
}
},{enableHighAccuracy:true})//enableHighAccuracy: 是否使用精确定位, true使用, false不使用
} else{
//getStats(): 获取状态
alert("获取定位失败!" + this.getStats());
}
}
</script>
</body>
</html>