h5使用高德修改marker的样式

一般来说,如果想添加一个带图片的marker,是要设置一个new AMap.Icon,然后把这个变量传入new AMap.Marker这个变量里的icon属性,但是这么做只能单独传图片,不能改变他的样式

高德提供了new AMap.Marker这个方法来增加marker,其他的不说了,参考高德的API,有一个属性是content,这个属性可以插入一段html,如果你想做一个自定义marker,并且想给他添加边框,那么需要自己定义这个content。下面是我定义的一个带网络图片的marker,并且给他设置了圆角和边框图片等比缩小显示中间部分

marker.png

代码如下

var startMarker = new AMap.Marker({
            position: new AMap.LngLat(element.center[0],element.center[1]),
            // icon: startIcon,
            offset: new AMap.Pixel(-13, -30),
            content: "<div class='mapIconBgView' style='background-image:url("+element.url+");background-position:center;background-size:cover;background-repeat: no-repeat'></div>"
        });

css:
.mapIconBgView {
width: 4rem;
height: 4rem;
border: 0.2rem solid white;
justify-content: center;
display: flex;
border-radius: 0.8rem;
overflow: hidden;

}

如果想要添加多个marker,需要把这些marker添加到一个数组layerArr,然后把数组添加到地图上

map.add(layerArr)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,824评论 1 45
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,633评论 0 17
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 4,110评论 0 0
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,159评论 1 32
  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,362评论 0 3