高德地图 - DIY我的地图
body {
margin: 0;
font: "Microsoft YaHei", "Helvetica Neue", "Sans-Serif";
min-height: 960px;
}
.my-map {
margin: 0 auto;
height: 640px;
}
.my-map .icon {
background: url(//a.amap.com/lbs-dev-yuntu/static/web/image/tools/creater/marker.png) no-repeat;
}
.my-map .icon-cir {
height: 31px;
width: 28px;
}
.my-map .icon-cir-blue {
background-position: -11px -55px;
}
.amap-container {
height: 100%;
}
.myinfowindow {
width: 240px;
min-height: 50px;
}
.myinfowindow h5 {
height: 20px;
line-height: 20px;
overflow: hidden;
font-size: 14px;
font-weight: bold;
width: 220px;
text-overflow: ellipsis;
word-break: break-all;
white-space: nowrap;
}
.myinfowindow div {
margin-top: 10px;
min-height: 40px;
line-height: 20px;
font-size: 13px;
color: #6f6f6f;
}
! function() {
var infoWindow, map, level = 16,
center = {
lng: 106.46,
lat: 29.51
},
features = [{
"icon": "cir",
"color": "blue",
"name": "乐普健糖药业(重庆)有限公司",
"desc": "重庆市九龙坡区二郎街道留学生创业园C栋",
"lnglat": {
"Q": 29.51,
"R": 106.46,
"lng": 106.46,
"lat": 29.51
},
"offset": {
"x": -20,
"y": -90
},
"type": "Marker"
}];
function loadFeatures() {
for (var feature, data, i = 0, len = features.length, j, jl, path; i < len; i++) {
data = features[i];
switch (data.type) {
case "Marker":
feature = new AMap.Marker({
map: map,
position: new AMap.LngLat(data.lnglat.lng, data.lnglat.lat),
zIndex: 3,
extData: data,
offset: new AMap.Pixel(data.offset.x, data.offset.y),
title: data.name,
content: '
'
});
break;
case "Polyline":
for (j = 0, jl = data.path.length, path = []; j < jl; j++) {
path.push(new AMap.LngLat(data.path[j].lng, data.path[j].lat));
}
feature = new AMap.Polyline({
map: map,
path: path,
extData: data,
zIndex: 3,
strokeWeight: data.strokeWeight,
strokeColor: data.strokeColor,
strokeOpacity: data.strokeOpacity
});
break;
case "Polygon":
for (j = 0, jl = data.path.length, path = []; j < jl; j++) {
path.push(new AMap.LngLat(data.path[j].lng, data.path[j].lat));
}
feature = new AMap.Polygon({
map: map,
path: path,
extData: data,
zIndex: 1,
strokeWeight: data.strokeWeight,
strokeColor: data.strokeColor,
strokeOpacity: data.strokeOpacity,
fillColor: data.fillColor,
fillOpacity: data.fillOpacity
});
break;
default:
feature = null;
}
if (feature) {
AMap.event.addListener(feature, "click", mapFeatureClick);
}
}
}
function mapFeatureClick(e) {
if (!infoWindow) {
infoWindow = new AMap.InfoWindow({
autoMove: true,
isCustom: false
});
}
var extData = e.target.getExtData();
infoWindow.setContent("
" + extData.name + "
" + extData.desc +
"
");
infoWindow.open(map, e.lnglat);
}
map = new AMap.Map("mapContainer", {
center: new AMap.LngLat(center.lng, center.lat),
level: level,
keyboardEnable: false,
scrollWheel: false
});
new AMap.TileLayer.RoadNet({
map: map,
zIndex: 2
});
loadFeatures();
map.on('complete', function() {
map.plugin(["AMap.ToolBar", "AMap.OverView", "AMap.Scale"], function() {
map.addControl(new AMap.ToolBar({
ruler: true,
direction: true,
locate: false
}));
map.addControl(new AMap.OverView({
isOpen: true
}));
map.addControl(new AMap.Scale);
});
})
}();