70 lines
2.1 KiB
JavaScript
70 lines
2.1 KiB
JavaScript
|
|
(function() {
|
|||
|
|
var lng = $("#lng");
|
|||
|
|
var lat = $("#lat");
|
|||
|
|
//var city = $("#j_city");
|
|||
|
|
var address = $("#Text_webAddress");
|
|||
|
|
var map = new BMap.Map("map");
|
|||
|
|
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));
|
|||
|
|
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() {
|
|||
|
|
var cityStr = "44030000";
|
|||
|
|
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.value = point.lng;
|
|||
|
|
lat.value = point.lat;
|
|||
|
|
marker.addEventListener("dragend",
|
|||
|
|
function(e) {
|
|||
|
|
lng.value = e.point.lng;
|
|||
|
|
lat.value = e.point.lat;
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
cityStr);
|
|||
|
|
|
|||
|
|
})
|
|||
|
|
var myGeo = new BMap.Geocoder();
|
|||
|
|
var mkrTool = new BMapLib.MarkerTool(map, {
|
|||
|
|
autoClose: true,
|
|||
|
|
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.value = e.marker.getPosition().lng;
|
|||
|
|
lat.value = e.marker.getPosition().lat;
|
|||
|
|
marker.enableDragging();
|
|||
|
|
marker.addEventListener("dragend",
|
|||
|
|
function(e) {
|
|||
|
|
lng.val(e.point.lng);
|
|||
|
|
lat.val(e.point.lat);
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
})();
|