地图初始化:
//地图初始化
var opt = {
level:11, //设置地图缩放级别
center:new AMap.LngLat(117.289686, 31.867204), //设置地图中心点
doubleClickZoom:true, //双击放大地图
scrollWheel:false//鼠标滚轮缩放地图
}
var map = new AMap.Map("container",opt);
map.plugin(["AMap.ToolBar","AMap.OverView","AMap.Scale"],function(){
var toolbar = new AMap.ToolBar();
toolbar.autoPosition=false; //加载工具条
map.addControl(toolbar);
var overview = new AMap.OverView(); //加载鹰眼
map.addControl(overview);
var scale = new AMap.Scale(); //加载比例尺
map.addControl(scale);
});
添加覆盖物:
//添加覆盖物
function addMapCover(obj){
var geocoderOption = {
range:400, // 范围
crossnum:1, // 道路交叉口数
roadnum :1, // 路线记录数
poinum:1 // POI点数
};
var gc=new AMap.Geocoder(geocoderOption);
var mypoint=new AMap.LngLat(obj.longitude_point, obj.dimensionality_point);
var direc=obj.direction;
var iconImg ="../images/mapicon/currcar_0.gif";
//添加相应的覆盖物
if(!obj.count||obj.count==0) {
//自定义覆盖物dom 元素
var m = document.createElement("div");
m.className = "markerlabel";
var markeruri= document.createElement("img");
markeruri.className="markerlnglat";
markeruri.src=iconImg;
m.appendChild(markeruri);
var n = document.createElement("span");
n.innerHTML = " "+obj.car_num;
m.appendChild(n);
var marker = new AMap.Marker({
map:map,
position:mypoint, //基点位置
offset:new AMap.Pixel(0,0), //相对于基点的偏移位置
content:m //自定义覆盖物内容
});
covers.push(marker);
//添加监听
AMap.event.addListener(marker,'click',function(e){
//获取地址信息
gc.regeocode(mypoint, function(rs){
showLocationInfo(obj,rs);
});
});
}else if(obj.count&&obj.count>0) {// 如果子节点存在且数量大于1的显示数字
//自定义覆盖物dom 元素
var m = document.createElement("div");
m.className = "bubbleimg";
var n = document.createElement("span");
n.innerHTML = "<b><a style='text-decoration: none' href='javascript:void(0)'>"+(obj.count+1)+"</a></b>";
m.appendChild(n);
var marker = new AMap.Marker({
map:map,
position:mypoint, //基点位置
offset:new AMap.Pixel(0,0), //相对于基点的偏移位置
content:m //自定义覆盖物内容
});
covers.push(marker);
var cids = obj.childrenIds;
var cidstr="(,"+cids+",)";
//添加监听
AMap.event.addListener(marker,'click',function(e){
showCarListBubble(cidstr);
});
}
}
显示窗口:
//显示地址信息窗口
function showLocationInfo(obj,marker,rs){
var content='';
//获取地理位置
var locAddress="未知";
if (rs.status == "E0") {
var province, city, district, road;
province = rs.list[0].province.name;
if (province == "北京市") {
city = province;
}
else {
city = rs.list[0].city.name;
}
district = rs.list[0].district.name;
road="";
if(typeof(rs.list[0].roadlist[0])!="undefined"){
road = rs.list[0].roadlist[0].name;
}
var address="";
if(typeof(rs.list[0].poilist[0])!="undefined"){
address = rs.list[0].poilist[0].address;
}
if(address==""){
locAddress = province + city + district + road;
}else{
locAddress = province + city + district + address;
}
}
content='<button class="tabbtn" οnclick="toCurrentStatus()">1</button> '
+'<button class="tabbtn" οnclick="toPliceInfo()">1</button> '
+'<div id="currentstatus" style="height:285px; width:350px; overflow:auto" ><table height="160px" width="260px">'
+'<tr><td align="right">1</td><td>'+locAddress+'</td></tr>'
+'<tr><td align="right">1</td><td>'+obj.rule_name+'</td></tr>'
+'<tr><td align="right">1</td><td>'+obj.tel+'</td></tr>'
+'<tr><td align="right">1</td><td>'+obj.record_time+'</td></tr>'
+'<tr><td align="center" colspan="2"></td></tr></table></div>';
var infoWindow = new AMap.InfoWindow({
content:content,
size:new AMap.Size(320,190),
offset:{x:15,y:5}
});
infoWindow.open(map,marker.getPosition());
}