您的位置:首页 > 其它

高德地图的Marker不需要setMap,创建时默认就可以显示在地图上

2018-03-30 17:19 603 查看
很惊奇,之前用百度地图API都是需要在创建Marker对象后,再执行setMap函数,才能显示到地图上,高德完全可以省略这一步,代码如下: $(document).ready(function(){
// 为防止CSRF(Cross-site request forgery)跨站请求伪造,发post请求时需要在cookie中创建随机码
$.ajaxSetup({
headers: { "X-CSRFToken": getCookie("csrftoken") }
});
var map = new AMap.Map('container', {
zoom: 9,
center: [124.342785, 43.312316]
});
// 测试Maker
var marker = new AMap.Marker({content: ' ', map: map})
marker.setPosition([124.342785, 43.312316]);
marker.setLabel({content: "测试标签"})

var marker2 = new AMap.Marker({
position: [124.332785, 43.312316],//marker所在的位置
map:map//创建时直接赋予map属性
});
/*
var style = [{
url: 'http://a.amap.com/jsapi_demos/static/images/mass0.png',
anchor: new AMap.Pixel(6, 6),
size: new AMap.Size(1, 1)
},{
url: 'http://a.amap.com/jsapi_demos/static/images/mass1.png',
anchor: new AMap.Pixel(0, 0),
size: new AMap.Size(1, 1)
},{
url: '\\static\\css\\images\\信号塔red.png',
anchor: new AMap.Pixel(0, 0),
size: new AMap.Size(12, 12)
}
];

// 海量点 画 基站
$.post("/get_site_names", {gsm: "True", lte: "False"}, function(data, status) {
//console.log(data[0]);
var mass = new AMap.MassMarks(data, {
opacity: 0.8,
zIndex: 111,
cursor: 'pointer',
style: style
});
var marker = new AMap.Marker({content: ' ', map: map})
mass.on('mouseover', function (e) {
marker.setPosition(e.data.lnglat);
marker.setLabel({content: e.data.name})
})
mass.setMap(map);
});
*/
// 设置使用包含3个图标的数组,还是使用单个图标
/*
var setStyle = function(multiIcon) {
if(multiIcon){
mass.setStyle(style);
}else{
mass.setStyle(style[2]);
}
}
*/
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: