92 lines
3.2 KiB
JavaScript
92 lines
3.2 KiB
JavaScript
|
|
|
|||
|
|
$(document).ready(function () {
|
|||
|
|
try {
|
|||
|
|
var lng = $("#lng");
|
|||
|
|
var lat = $("#lat");
|
|||
|
|
var city = $("#city");
|
|||
|
|
var address = $("#address");
|
|||
|
|
var map = new BMap.Map("map");
|
|||
|
|
var myIcon = new BMap.Icon("https://gx.fuanmei.cn/images/position-picker2.png", new BMap.Size(60, 100), { imageOffset: new BMap.Size(0, 0) });
|
|||
|
|
var marker;
|
|||
|
|
var longitude = lng.val();
|
|||
|
|
var latitude = lat.val();
|
|||
|
|
if (longitude != "" && latitude != "") {
|
|||
|
|
|
|||
|
|
map.centerAndZoom(new BMap.Point(longitude, latitude), 12);
|
|||
|
|
marker = new BMap.Marker(new BMap.Point(longitude, latitude),{
|
|||
|
|
icon: myIcon
|
|||
|
|
});
|
|||
|
|
map.addOverlay(marker);
|
|||
|
|
} else {
|
|||
|
|
var localcity = new BMap.LocalCity();
|
|||
|
|
localcity.get(function (e) {
|
|||
|
|
map.centerAndZoom(e.center, 12);
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
map.addControl(new BMap.NavigationControl());
|
|||
|
|
map.enableScrollWheelZoom();
|
|||
|
|
|
|||
|
|
$('#searchbtn').on('click',
|
|||
|
|
function () {
|
|||
|
|
|
|||
|
|
if (city.val() == "") {
|
|||
|
|
alert("请选择城市");
|
|||
|
|
} else {
|
|||
|
|
|
|||
|
|
var cityStr = $(city).find("option:checked").html();
|
|||
|
|
|
|||
|
|
var addressStr = address.val();
|
|||
|
|
myGeo.getPoint(addressStr,
|
|||
|
|
function (point) {
|
|||
|
|
if (point) {
|
|||
|
|
map.centerAndZoom(point, 16);
|
|||
|
|
marker = new BMap.Marker(point);
|
|||
|
|
map.addOverlay(marker);
|
|||
|
|
marker.enableDragging();
|
|||
|
|
lng.val(point.lng);
|
|||
|
|
lat.val(point.lat);
|
|||
|
|
marker.addEventListener("dragend",
|
|||
|
|
function (e) {
|
|||
|
|
lng.val(e.point.lng);
|
|||
|
|
lat.val(e.point.lat);
|
|||
|
|
},{
|
|||
|
|
icon: myIcon
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
cityStr);
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
var myGeo = new BMap.Geocoder();
|
|||
|
|
|
|||
|
|
var mkrTool = new BMapLib.MarkerTool(map, {
|
|||
|
|
autoClose: true,
|
|||
|
|
icon: myIcon,
|
|||
|
|
followText: "标注您的位置"
|
|||
|
|
});
|
|||
|
|
$('#addMarker').on('click',
|
|||
|
|
function () {
|
|||
|
|
|
|||
|
|
mkrTool.open();
|
|||
|
|
map.removeOverlay(marker);
|
|||
|
|
marker.dispose();
|
|||
|
|
lng.val("");
|
|||
|
|
lat.val("");
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
mkrTool.addEventListener("markend",
|
|||
|
|
function (e) {
|
|||
|
|
marker = e.marker;
|
|||
|
|
lng.val(e.marker.getPosition().lng);
|
|||
|
|
lat.val(e.marker.getPosition().lat);
|
|||
|
|
marker.enableDragging();
|
|||
|
|
marker.addEventListener("dragend",
|
|||
|
|
function (e) {
|
|||
|
|
lng.val(e.point.lng);
|
|||
|
|
lat.val(e.point.lat);
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
} catch (err) {
|
|||
|
|
alert(err);
|
|||
|
|
}
|
|||
|
|
});
|