前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >高德地图实现多点标注功能

高德地图实现多点标注功能

作者头像
全栈程序员站长
发布2022-08-26 11:42:55
6470
发布2022-08-26 11:42:55
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
    <title>多点标注</title>
    <script src="/static/jquery/jquery-1.11.1.min.js"></script>
    <link href="/static/materialize/css/materialize.min.css" rel="stylesheet">
    <script src="/static/materialize/js/materialize.min.js"></script>
    <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
    <script src="http://webapi.amap.com/maps?v=1.3&key=6d116d4252d7f7ce90a808ace0812248"></script>   <!--引入高德地图api,key为你自己获取的key值-->
    <script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script>
    <style> .amap-logo{ display: none; /*隐藏左下角地图logo*/ } .amap-copyright{ display: none!important; } </style>
</head>
<body>
<div id="container" style="width:100%;height:100%"></div>
<div id="tip"></div>
<script> var map = new AMap.Map('container', {}); map.plugin(["AMap.ToolBar"], function() { 
     map.addControl(new AMap.ToolBar()); }); var infoWindow = new AMap.InfoWindow({}); //创建信息窗口对象 ps.高德目前不支持多信息窗口,即使创建多个窗口对象,也只会显示一个 var lnglats= [["116.4123","39.906422"],["116.4352","39.906933"],["116.445435","39.9054345"]]; var data = [{ 
   "id":1,"name":"我是第1个点","type":1},{ 
   "id":2,"name":"我是第2个点","type":3},{ 
   "id":3,"name":"我是第3个点","type":7}]; for(var i= 0;i<lnglats.length;i++){ var marker=new AMap.Marker({ position:lnglats[i], //采用默认样式,无需自定义 map:map }); content = []; content.push('ID:'+data[i].id); content.push('名称:'+data[i].name); marker.content = content; marker.title = data[i].id+"."+data[i].name; //标记点的title // if(data[i].id==2){ //默认打开第二个点的信息窗口 infoWindow.setContent(content.join("<br/>")); infoWindow.open(map,lnglats[i]); // } marker.on('dblclick',openAmap); //这里采用调到新页面方式导航,也可直接定义带导航功能的信息窗体,请参考http://lbs.amap.com/api/javascript-api/example/infowindow/infowindow-has-search-function/ //给Marker绑定单击事件 marker.on('click', markerClick); } map.setFitView(); //跳至地图当中导航 function openAmap(e){ 
     e.target.markOnAMAP({ name:e.target.title, position:e.target.getPosition() }) } //信息窗口 function markerClick(e){ 
     infoWindow.setContent(e.target.content.join('<br/>')); infoWindow.open(map, e.target.getPosition()); } //地图加载完成事件 map.on('complete', function() { 
     Materialize.toast('地图图块加载完毕!', 4000) // document.getElementById('tip').innerHTML = "地图图块加载完毕!当前地图中心点为:" + data[0].name; }); </script>
</body>
</html>

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/143467.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档