html页面

<!-- 地图定位-->
<div class="mapLocation_childPage childPage">
<div class="mapLocationOperationGroup">
<p><input type="text" id="searchValue"/><button onclick="theLocation()">搜索</button></p>
<p>地理坐标:<input type="text" disabled id="cityCoordinates"/></p>
<!--<div id="searchResultPanel" style="border:1px solid #C0C0C0;width:150px;height:auto; display:none;position: absolute;top:0;left:0"></div>-->
</div>
<div class="mapMainDiv">
<div id="dealerMapInfo">搜索结果</div>
<!-- 地图区域-->
<div id="dealerMap">

</div>
</div>
</div>

 //调用百度地图接口
var map = new BMap.Map("dealerMap"); // 创建地图实例
var point = new BMap.Point(116.404, 39.915); // 创建点坐标

map.centerAndZoom(point, 15);
map.enableScrollWheelZoom(); //启用滚轮放大缩小,默认禁用
map.enableContinuousZoom(); //启用地图惯性拖拽,默认禁用

map.addControl(new BMap.NavigationControl()); //添加默认缩放平移控件
map.addControl(new BMap.OverviewMapControl()); //添加默认缩略地图控件
map.addControl(new BMap.OverviewMapControl({ isOpen: true, anchor: BMAP_ANCHOR_BOTTOM_RIGHT })); //右下角,打开

var marker = new BMap.Marker(point); // 创建标注
map.addOverlay(marker);
function myFun(result){//自动ip定位--当前城市
cityName = result.name;
map.setCenter(cityName);
alert("当前定位城市:"+cityName);
}
var myCity = new BMap.LocalCity();
myCity.get(myFun);
//// 绑定地图事件
// map.addEventListener("click", function(){
// alert("您点击了地图。");
// });

//请求获取当前自动定位城市ip地址经纬度
$.ajax({
type: "GET",
url: "http://api.map.baidu.com/location/ip?ak=GOrivG82nnNrr4rNogrLfYzQ&coor=bd09ll",
async:true,
dataType: "jsonp",
beforeSend: function (xhr) {
xhr.setRequestHeader("X-Custom-Header1", "Bar");
},
success:function(data){
//当前城市经纬度
var nowCityLng =data.content.point.x;
var nowCityLnt =data.content.point.y;
$("#cityCoordinates").val(nowCityLnt+","+nowCityLng);
console.log(nowCityLng+"=="+nowCityLnt);
//console.log(data);
}
});

var localSearch = new BMap.LocalSearch(map);//获取搜索框地址经纬度
localSearch.enableAutoViewport(); //允许自动调节窗体大小
function searchByStationName() {
map.clearOverlays();//清空原来的标注
var keyword = document.getElementById("searchValue").value;
localSearch.setSearchCompleteCallback(function (searchResult) {
var poi = searchResult.getPoi(0);
document.getElementById("cityCoordinates").value = poi.point.lng + "," + poi.point.lat;
map.centerAndZoom(poi.point, 13);
var marker = new BMap.Marker(new BMap.Point(poi.point.lng, poi.point.lat)); // 创建标注,为要查询的地方对应的经纬度
map.addOverlay(marker);
var content = document.getElementById("searchValue").value + "<br/><br/>经度:" + poi.point.lng + "<br/>纬度:" + poi.point.lat;
var infoWindow = new BMap.InfoWindow("<p style=\'font-size:14px;\'>" + content + "</p>");
marker.addEventListener("click", function () { this.openInfoWindow(infoWindow); });
// marker.setAnimation(BMAP_ANIMATION_BOUNCE); //跳动的动画
});
localSearch.search(keyword);
}

/搜索输入框定位地图
var cityName;
function theLocation(){
var searchValue =$("#searchValue").val();
var map = new BMap.Map("dealerMap"); // 创建Map实例
var local = new BMap.LocalSearch(cityName, //搜索多个地址
{renderOptions: {map: map,autoViewport: true,panel:"dealerMapInfo" //结果显示},pageCapacity: 6});
local.search(searchValue);

map.enableScrollWheelZoom(); //启用滚轮放大缩小,默认禁用
map.enableContinuousZoom(); //启用地图惯性拖拽,默认禁用

map.addControl(new BMap.NavigationControl()); //添加默认缩放平移控件
map.addControl(new BMap.OverviewMapControl()); //添加默认缩略地图控件
map.addControl(new BMap.OverviewMapControl({ isOpen: true, anchor: BMAP_ANCHOR_BOTTOM_RIGHT })); //右下角,打开

var localSearch = new BMap.LocalSearch(map);
localSearch.enableAutoViewport(); //允许自动调节窗体大小

//输入框获取经纬度
localSearch.setSearchCompleteCallback(function (searchResult) {
var poi = searchResult.getPoi(0);
if(poi!=undefined){
document.getElementById("cityCoordinates").value = poi.point.lng + "," + poi.point.lat;
}
});
localSearch.search(searchValue);
}

版权声明:本文为liuzhaoqin原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/liuzhaoqin/p/4904594.html