zoukankan      html  css  js  c++  java
  • js调用百度地图

    一、通过<script>标签将 API 引用到页面中

    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=NepGm5SfjBsSWsTxsvZqc2RW3KM6zZG2"></script>
    

    二、设置文本框,存储返回地址

      <input class="textbox" name="Address" data-options="required:true" id="linkaddress"/>
    

    二、添加百度地图弹窗

        <!--百度弹框-->
    <div class="easyui-dialog" id="baiduMap" style=" 800px;top:45px;"
         closed="true" resizable="true" modal="true" buttons="#dlg-buttons">
        <div class="easyui-panel" style="padding: 10px 10px; overflow-x: hidden;">
    <!--百度地图显示的地方-->
            <div style="height:400px;780px" id="container">
            </div>
            <div style="text-align: center;  100%;margin-top:20px">
                <input id="txtAddress" type="text" />
                <input id="butSearch" type="button" onclick="sear($('#txtAddress').val())" value="搜索" />
                经纬度:
                <input id="txtjingweidu" type="text" />
                <input id="lng" style="display:none;" />
                <input id="lat" style="display:none;" />
                地址:
                <input id="add" style="320px;" />
           </div>
                <div style="text-align: center;  100%; margin-top:10px">
                    <a href="javascript:void(0)" class="easyui-linkbutton" onclick="selectMap();" iconcls="icon-ok">确定</a>
                    <a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-cancel" onclick="$('#baiduMap').dialog('close')">关闭</a>
                </div>
    
            </div>
        
        </div>
    <!--/弹框-->
    

     四、js部分 百度地图相关操作

    <script>
    
            $('#linkaddress').click(function () {
                $('#baiduMap').dialog('open').dialog('setTitle', '选择地址')
                map.clearOverlays();//添加标注前清空以前的所有标注
    
    
                var lng, lat;
                lng = $('#Longitude');
                lat = $('#Latitude');
                $('#add').val($('#linkaddress').val());
                if (lng.val() != '' && lat.val() != '') {
                    var marker = new BMap.Marker(new BMap.Point(lng.val(), lat.val()));        // 创建标注
                    map.addOverlay(marker);
    
                    $("#txtjingweidu").val(lng.val() + ", " + lat.val());
                    var point = new BMap.Point(lng.val(),lat.val());  // 创建点坐标
                    map.centerAndZoom(point, 15);                 // 初始化地图,设置中心点坐标和地图级别
                    map.panBy(365, 230);//中心点偏移多少像素
                }
            });
    
            var map = new BMap.Map("container");//在指定的容器内创建地图实例
            map.setDefaultCursor("crosshair");//设置地图默认的鼠标指针样式
            map.enableScrollWheelZoom();//启用滚轮放大缩小,默认禁用。
    
            //根据经纬度选择默认范围
            map.centerAndZoom("南宁市", 12);//默认地图的显示范围
            map.addControl(new BMap.NavigationControl());
    
            map.addEventListener("click", function (e) {//地图右键单击事件,左键为click
                map.clearOverlays();//添加标注前清空以前的所有标注
                $("#txtjingweidu").val(e.point.lng + ", " + e.point.lat);
                $('#lng').val(e.point.lng);
                $('#lat').val(e.point.lat);
                Geocoder(e.point);
    
                var marker = new BMap.Marker(new BMap.Point(e.point.lng, e.point.lat));        // 创建标注
                map.addOverlay(marker);
            });
    
            function sear(result) {//根据地质搜索范围
                var local = new BMap.LocalSearch(map, {
                    renderOptions: { map: map }
                });
                local.search(result);
            }
    
            //获取经纬度
            function selectMap() {
                var lng, lat;
                lng = $('#Longitude');
                lat = $('#Latitude');
    
                lng.val($('#lng').val());
                lat.val($('#lat').val());
                $('#linkaddress').val($('#add').val());
                $('#baiduMap').dialog('close');
            }
    
            //根据坐标获取地址
            function Geocoder(point) {
                var gc = new BMap.Geocoder();
                gc.getLocation(point, function (rs) {
                    var addComp = rs.addressComponents;
                    $('#add').val(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber);
                });
            }
    
    </script>
    

      

  • 相关阅读:
    Android 按键消息处理Android 按键消息处理
    objcopy
    SQLite多线程读写实践及常见问题总结
    android动画坐标定义
    Android动画效果translate、scale、alpha、rotate
    Android公共库(缓存 下拉ListView 下载管理Pro 静默安装 root运行 Java公共类)
    Flatten Binary Tree to Linked List
    Distinct Subsequences
    Populating Next Right Pointers in Each Node II
    Populating Next Right Pointers in Each Node
  • 原文地址:https://www.cnblogs.com/lemonmoney/p/7227354.html
Copyright © 2011-2022 走看看