百度地图api标注点label文字框显示不全
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度地图api标注点label文字框显示不全相关的知识,希望对你有一定的参考价值。
参考技术A 项目中引用了百度地图api,单独的地图demo是正常的,但在项目中会发现label的文字框显示不全,效果如下:出现如上所说的情况,大多数是因为项目总加载了bootstrap.js,bootstrap.js中为label加了样式:max-width:100%。
此时我们重新定义label样式即可。
修改后的效果图如下:
百度地图api,点击标注,改变标注marker图标的链接地址
改变选中的图标样式
1 // 选中高亮标注图片
2 let mapIcon = ‘./icon.png’;
3
4 //标注点
5 let markerArrs = [{},{},....];
6
7
8 // 点击标注点
9 marker.addEventListener("click", (evt) => {
10 for (let j = 0; j < markerArrs.length; j++) {
11 const element = markerArrs[j];
12 // 初始化点的时候绑定customId
13 let ids = evt.target ? evt.target.id : evt.customId;
14 if( ids === element.id){
15 element.setIcon(new BMap.Icon(mapIcon, new BMap.Size(24,39)));
16 }else{
17 // 初始化点的时候绑定初始化iconSrc标注地址
18 element.setIcon(new BMap.Icon(element.iconSrc, new BMap.Size(24,39)));
19 }
20 }
21 }
简单例子
1 //简单点说明
2 var pointAIcon2= new BMap.Icon(url2, new BMap.Size(28,28));
3
4 markerArm.addEventListener("click",function () {
5 this.setIcon(pointAIcon2);
6 });
以上是关于百度地图api标注点label文字框显示不全的主要内容,如果未能解决你的问题,请参考以下文章