本篇文章主要是高德地图的多点聚合,及多个marker点击事件

以下为简单的模拟数据

soogif (1).gif

image.png

具体代码如下

点聚合

html,

body,

#container {

height: 100%;

width: 100%;

}

var cluster, markers = [];

// 地图初始化

var map = new AMap.Map("container", {

resizeEnable: true,

center: [105, 34],

zoom: 4

});

// 模拟数据

let list = [{

lnt: 113.951955,

lat: 22.530825,

content: "aaa",

url: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2126240618,1874470849&fm=26&gp=0.jpg"

}, {

lnt: 116.397428,

lat: 39.90923,

content: "bbb",

url: "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605524499220&di=061f5404ccf4b56ca5109c6a74cad7e8&imgtype=0&src=http%3A%2F%2Fbpic.588ku.com%2Felement_origin_min_pic%2F18%2F01%2F15%2Fecc1be26af0ccb3aab8a64cbc1d7d5b9.jpg"

}, {

lnt: 117.000923,

lat: 36.675807,

content: "ccc",

url: "https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3897032442,810482418&fm=26&gp=0.jpg"

}, {

lnt: 112.89114340293699,

lat: 38.06208615376387,

content: "ddd",

url: "https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3897032442,810482418&fm=26&gp=0.jpg"

}, {

lnt: 116.303843,

lat: 39.983412,

content: "eee",

url: "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1794114107,2569649938&fm=26&gp=0.jpg"

}, {

lnt: 108.94444,

lat: 34.14248,

content: "fff",

url: "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605524653591&di=fce2171454e6d4d44545e51b41bb4224&imgtype=0&src=http%3A%2F%2Fbpic.588ku.com%2Foriginal_pic%2F19%2F03%2F18%2Fbf2928abcd5f96beab12f7a8611614c5.jpg"

}, {

lnt: 121.472644,

lat: 31.231706,

content: "ggg",

url: "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605524499220&di=061f5404ccf4b56ca5109c6a74cad7e8&imgtype=0&src=http%3A%2F%2Fbpic.588ku.com%2Felement_origin_min_pic%2F18%2F01%2F15%2Fecc1be26af0ccb3aab8a64cbc1d7d5b9.jpg"

}, //上海

{

lnt: 121.506377,

lat: 31.245105,

content: "hhh",

url: "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605524653591&di=fce2171454e6d4d44545e51b41bb4224&imgtype=0&src=http%3A%2F%2Fbpic.588ku.com%2Foriginal_pic%2F19%2F03%2F18%2Fbf2928abcd5f96beab12f7a8611614c5.jpg"

}, {

lnt: 121.392735,

lat: 31.083714,

content: "iii",

url: " https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1794114107,2569649938&fm=26&gp=0.jpg",

},

{

lnt: 107.0138,

lat: 33.0436,

content: "jjjj",

url: "https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3897032442,810482418&fm=26&gp=0.jpg",

}, //汉中

{

lnt: 108.95,

lat: 34.27,

content: "kkkk",

url: "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605524499220&di=061f5404ccf4b56ca5109c6a74cad7e8&imgtype=0&src=http%3A%2F%2Fbpic.588ku.com%2Felement_origin_min_pic%2F18%2F01%2F15%2Fecc1be26af0ccb3aab8a64cbc1d7d5b9.jpg"

}, {

lnt: 109.11,

lat: 35.09,

content: "lll",

url: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2126240618,1874470849&fm=26&gp=0.jpg",

}, {

lnt: 110.51,

lat: 38.83,

content: "mmm",

url: " https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1794114107,2569649938&fm=26&gp=0.jpg"

}, {

lnt: 109.77,

lat: 38.3,

content: "nnnn",

url: "https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3897032442,810482418&fm=26&gp=0.jpg",

}, {

lnt: 106.16,

lat: 33.34,

content: "oooo",

url: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2126240618,1874470849&fm=26&gp=0.jpg"

},

]

list.map((data) => {

// 海量生成marker点

var marker = new AMap.Marker({

position: new AMap.LngLat(data.lnt, data.lat),

title: data.title,

content: `

`,

offset: new AMap.Pixel(-15, -15)

})

var a = "https://www.jianshu.com/users/27c303b4ef55/followers"

content = `

${data.content},${data.lnt},${data.lat}

详情

`

content.replace(/undefined/g, "");

// 窗体信息

let infoWindow = new AMap.InfoWindow({

content: content, //使用默认信息窗体框样式,显示信息内容

offset: new AMap.Pixel(0, -15),

});

//监听marker的点击事件

AMap.event.addListener(marker, "click", function(e) {

infoWindow.open(

map,

// 窗口信息的位置

marker.getPosition(data.lnt, data.lat)

);

})

markers.push(marker)

//添加监听事件,当前缩放级别

AMap.event.addListener(map, 'zoomend', function() {

var zoom = map.getZoom();

// 关闭信息窗体

map.clearInfoWindow(infoWindow);

});

});

//使用renderClusterMarker属性实现聚合点的完全自定义绘制

var count = markers.length;

var _renderClusterMarker = function(context) {

var factor = Math.pow(context.count / count, 1 / 18);

var div = document.createElement('div');

var Hue = 180 - factor * 180;

var bgColor = 'hsla(' + Hue + ',100%,50%,0.7)';

var fontColor = 'hsla(' + Hue + ',100%,20%,1)';

var borderColor = 'hsla(' + Hue + ',100%,40%,1)';

var shadowColor = 'hsla(' + Hue + ',100%,50%,1)';

div.style.backgroundColor = bgColor;

var size = Math.round(30 + Math.pow(context.count / count, 1 / 5) * 20);

div.style.width = div.style.height = size + 'px';

div.style.border = 'solid 1px ' + borderColor;

div.style.borderRadius = size / 2 + 'px';

div.style.boxShadow = '0 0 1px ' + shadowColor;

div.innerHTML = context.count;

div.style.lineHeight = size + 'px';

div.style.color = fontColor;

div.style.fontSize = '14px';

div.style.textAlign = 'center';

context.marker.setOffset(new AMap.Pixel(-size / 2, -size / 2));

context.marker.setContent(div)

};

if (cluster) {

cluster.setMap(null);

}

// 点聚合样式

cluster = new AMap.MarkerClusterer(map, markers, {

gridSize: 80

});

js添加多marker 高德地图_高德地图点聚合--Marker多点聚合及多个marker点击事件相关推荐

  1. js如何同时打开多个信息窗口 高德地图_高德地图-展示多个信息窗口

    1.问题背景 高德地图,设置小图标,并点击图标显示信息 2.实现源码 高德地图展示多个信息窗口 //初始化地图对象,加载地图 var map = new AMap.Map("containe ...

  2. 地图上分成一块一块区域 高德地图_高德导航定位错误致拥堵,景区发文呼吁游客别用高德地图,回应来了...

    10月4日下午,青城山都江堰景区与高德地图"怼"上了.该景区官方公众号"青城山都江堰"发文称,近来,青城山都江堰景区频繁接到游客反映,使用"高德地图& ...

  3. react 逆地理 高德地图_高德官宣!海外地图服务年内上线:首批覆盖亚洲多个国家...

    1月8日消息,在2020CES期间,高德与HERE Technologies(以下简称"HERE地图")共同宣布,双方将基于海外地图及动态信息服务展开合作. HERE地图将为高德地 ...

  4. react 谷歌地图_谷歌地图与React

    react 谷歌地图 情况(The Situation) Your working on a React-based application and you want to implement Goo ...

  5. 百度离线地图_这个地图APP,专注于地图软件该做的事!

    Bmap Bmap,简单的双地图应用.可任意切换/高德地图数据源,致力满足日常生活的出行需求.具有步行.公交.骑行.驾驶等出行方案,查看街景. 新版特性 1.升级百度地图sdk6.0.0 2.升级高德 ...

  6. 高精地图_语义地图_众包地图相关论文笔记

    1.20220618_LT-mapper: A Modular Framework for LiDAR-based Lifelong Mapping 2021 3d-Lidar构建long-term地 ...

  7. js如何同时打开多个信息窗口 高德地图_高德地图显示单个窗体和显示多个窗体的方法...

    高德地图是我经常使用过的组件,今天想跟大家讨论下信息窗体的创建与显示的方法,这种就是属于自定的内容了,需要到高德开发者中心查看一些相应的文档 image.png LatLng latLng = new ...

  8. marker 头像 高德地图_高德地图头像怎么更换 高德地图更换头像图文教程

    相信绝大部分人都知道微信头像以及QQ头像怎么更换,而设置头像也是很多人喜欢做的一件事情.而对于经常使用高德地图的用户来说,头像该怎么设置呢?对于这群用户,下面百事网小编为大家带来详细的高德地图更换头像 ...

  9. marker 头像 高德地图_手机地图导航软件高德地图1.如何下载高德地图

    大家在使用手机地图的时候必须开启GPS定位服务,如不开启会定位失败 点击我查看如何开启手机GPS定位服务 如果会开启GPS定位服务的可直接点击观看以下文章 高德地图是国内一流的免费地图导航产品,也是基 ...

最新文章

  1. Codevs 1005 生日礼物
  2. Python PIL反色混合
  3. Oracle 索引扫描的五种类型
  4. java 应用程序无法运行_关于解决浏览器无法运行小应用程序问题
  5. python学习笔记 --- 随机数进阶
  6. vs2013链接Mysql时出现 (由于找不到libmysql.dll,无法继续执行代码。重新安装程序可能会解决此问题)
  7. python考试名词解释_python公开课|python专有名词居然有这么多,python专有名词解释已做好...
  8. libpcap 编程入门资源
  9. 内蒙古师范大学计算机与科学,2021年内蒙古师范大学计算机科学与技术(077500)硕士研究生招生信息_考研招生计划和招生人数 - 学途吧...
  10. 传递给系统调用的数据区域太小。 (异常来自 HRESULT:0x8007007A)
  11. java scjp 试题_JAVA认证:78道SCJP考试试题精解
  12. 【UnityShader】使用Cubemap/Matcap制作玻璃
  13. 【收集】网络上各路大侠放出的面试题、求职技巧
  14. 智能暖风机——8.云端控制
  15. PySpark处理数据并图表分析
  16. 计算机伦理学理论分析三大思想,试论伦理学的三种理论形态——基于理论形态学的考察...
  17. 【WiFi】hostapd 配置80M频宽某些信道启动失败问题分析及解决
  18. Spring JPA 随手记
  19. java中栈的两种实现
  20. Android USB开发小结:host模式与accessory模式

热门文章

  1. 【ML】异常检测、PCA、混淆矩阵、调参综合实践(基于sklearn)
  2. 使用pypinyin将汉字转换为全拼
  3. 阿里文娱永叔:利器or成本损耗?算法不是黑匣子
  4. 特斯拉降价最高64万原来是为了它,马斯克宣布三月份发布新品Model Y特斯拉电动车
  5. 算法岗面经总结(映客 )
  6. 树莓派安装synology_如何从Synology NAS安装(和删除)应用程序包
  7. Linux三剑客老三 grep
  8. 【融职培训】Web前端学习 第2章 网页重构7 浮动布局
  9. 神州退市,一嗨要上市
  10. 杭电4510—小Q系列故事—为什么时光不能倒流