• 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>
    

      

  • 相关阅读:
    计算机网络中的多路复用技术
    ActiveMQ之一--ActiveMQ入门
    ehcache介绍
    I/O模型之二:Linux IO模式及 select、poll、epoll详解
    【甘道夫】HBase(0.96以上版本号)过滤器Filter具体解释及实例代码
    Android Studio安装及主题字体配置
    HDU 2136 Largest prime factor 參考代码
    update更新两个字段
    Hadoop对小文件的解决方式
    赵雅智_ContentProvider
  • 原文地址:https://www.cnblogs.com/lemonmoney/p/7227354.html
Copyright © 2020-2023  润新知