百度地图坐标定位

使用须知:
1. 百度账号注册
2. 获取开发者ak

location.json 地点集合

[
  {
    "longitude": 111,
    "altitude": 38.99999
  },
  {
    "longitude": 111,
    "altitude": 39.9011
  },
  {
    "longitude": 111,
    "altitude": 38.900999
  },
  {
    "longitude": 110,
    "altitude": 39.99999
  },
  {
    "longitude": 111.69999,
    "altitude": 39.99999
  },
  {
    "longitude": 111.533,
    "altitude": 39.99999
  }
]
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <style type="text/css">
        body, html{width: 100%;height: 100%;margin:0;font-family:"微软雅黑";}
        #allmap{height:500px;width:100%;}
        #r-result{width:100%; font-size:14px;}
    </style>
    <script src="../js/jquery.js"></script>
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=yourAK"></script>
    <title>城市名定位</title>
</head>
<body>
<div id="allmap"></div>
<div id="r-result">
    经度: <input id="longitude" type="text" style="width:100px; margin-right:10px;" />
    纬度: <input id="latitude" type="text" style="width:100px; margin-right:10px;" />
    <input type="button" value="查询" onclick="theLocation()" />
</div>
</body>
</html>


<script type="text/javascript">
    // 百度地图API功能
    var map = new BMap.Map("allmap");
    map.centerAndZoom(new BMap.Point(116.331398,39.897445),11);
    map.enableScrollWheelZoom(true);

    $.getJSON("../json/location.json", function(data){
        $.each(data, function(infoIndex, info){
            var longitude = info['longitude'];
            var altitude = info['altitude'];

            var new_point = new BMap.Point(longitude, altitude);
            var marker = new BMap.Marker(new_point);  // 创建标注
            map.addOverlay(marker);              // 将标注添加到地图中
            map.panTo(new_point);
        });
    });

    // 用经纬度设置地图中心点
    function theLocation(){
        if(document.getElementById("longitude").value != "" && document.getElementById("latitude").value != ""){
            map.clearOverlays();
            var new_point = new BMap.Point(document.getElementById("longitude").value,document.getElementById("latitude").value);
            var marker = new BMap.Marker(new_point);  // 创建标注
            map.addOverlay(marker);              // 将标注添加到地图中
            map.panTo(new_point);
        }
    }
</script>

运行效果:
这里写图片描述

更多百度Map demo链接:
更多百度Map demo链接

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过百度地图提供的定位API中的 `Geolocation` 对象来设置定位更新时间。具体步骤如下: 1. 引入百度地图JavaScript API的脚本文件: ```html <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script> ``` 其中,`ak` 参数为你在百度地图开发者平台申请的密钥。 2. 创建地图实例: ```javascript var map = new BMap.Map("container"); // 创建地图实例 ``` 其中,`container` 参数为地图容器的 id。 3. 创建定位对象: ```javascript var geolocation = new BMap.Geolocation(); ``` 4. 设置定位选项: ```javascript geolocation.enableSDKLocation(); // 启用百度地图SDK定位 geolocation.enableAccuracy(); // 启用高精度定位 geolocation.setCoorType("bd09ll"); // 设置坐标类型为百度墨卡托坐标 geolocation.setTimeout(3000); // 设置定位超时时间为3秒 geolocation.setMaximumAge(30000); // 设置定位缓存时间为30秒 geolocation.setInterval(30000); // 设置定位更新时间为30秒 ``` 其中,`setTimeout` 方法设置定位超时时间,`setMaximumAge` 方法设置定位缓存时间,`setInterval` 方法设置定位更新时间。 5. 添加定位事件监听器: ```javascript geolocation.getCurrentPosition(function(result){ // 处理定位结果 }); ``` 6. 处理定位结果: ```javascript if (this.getStatus() == BMAP_STATUS_SUCCESS){ var position = result.point; // 获取定位点 var address = result.address; // 获取地址信息 // 处理定位结果 } else { // 处理定位失败 } ``` 其中,`getStatus` 方法用于获取定位状态,`point` 属性用于获取定位点,`address` 属性用于获取地址信息。 以上就是通过百度地图设置定位更新时间的步骤,你可以根据自己的需求进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值