需求:初始化地图需要根据数据在地图上进行marker标注,同时展示所有相关信息,并且鼠标点击label里面的数字可以进行页面的挑战,效果图如下:
正常代码逻辑:
var marker = new AMap.Marker({
map: that.map,
position: [109.304819, 36.053438],
offset: new AMap.Pixel(0, 0),
label: {
content: `<div ><a href="http://www.baidu.com">跳转</a></div>`,
direction: 'top' //文本标注方位 可选值:'top'|'right'|'bottom'|'left'|'center',默认值: 'right'
}
});
//点击事件
marker.on('click', (e) => {
// 逻辑处理
});
以上就会出现一个问题就是,在点击跳转的时候,并没有跳转页面而是触发了marker.on里面的逻辑,事件冒泡、穿透,都没用
以下是本人自己想的一个解决办法
var marker = new AMap.Marker({
map: that.map,
position: [109.304819, 36.053438],
offset: new AMap.Pixel(0, 0),
label: {
content: `<div ><a href="http://www.baidu.com">跳转</a></div>`,
direction: 'top'
}
});
var markersa = new AMap.Marker({
map: that.map,
position: [109.304819, 36.053438],
content: ''
});
//点击事件
markersa.on('click', (e) => {
// 逻辑处理
});