当前位置: 首页 > article >正文

html使用天地图写一个地图列表

一、效果图:

点击左侧地址列表,右侧地图跟着改变。
在这里插入图片描述

二、代码实现:

一进入页面时,通过body调用onLoad="onLoad()"函数,确保地图正常显示。

<body onLoad="onLoad()">
					<!--左侧代码-->
					<div class="addressList">
							<div class="address_item"
								onclick="setCenterAndZoom(36.66416, 117.03215,'济南市历下区泉城路世茂广场东座商场三楼E370<br />Red Copper专柜 ')">
								<div class="name">济南世茂店</div>
								<div class="infobox">
									<img src="static/imgs/region@2x_1.png" />
									<div class="infos">济南市历下区泉城路世茂广场东座商场三楼E370<br />Red Copper专柜 </div>
								</div>
							</div>
							<div class="address_item"
								onclick="setCenterAndZoom(36.66637,117.1969,'济南市历城区经十路与凤鸣路交汇口(融创茂东门)L1层1032<br />Red Copper专柜')">
								<div class="name">济南融创店</div>
								<div class="infobox">
									<img src="static/imgs/region@2x_1.png" />
									<div class="infos">济南市历城区经十路与凤鸣路交汇口(融创茂东门)L1层1032<br />Red Copper专柜</div>
								</div>
							</div>
							<div class="address_item"
								onclick="setCenterAndZoom(39.9042, 116.4074,'济南市槐荫区经七纬十二路和谐银座七楼<br />Red Copper专柜 ')">
								<div class="name">济南和谐店</div>
								<div class="infobox">
									<img src="static/imgs/region@2x_1.png" />
									<div class="infos">济南市槐荫区经七纬十二路和谐银座七楼<br />Red Copper专柜 </div>
								</div>
							</div>
							……
						</div>
						
						<!--右侧代码-->
						<div class="imgbox" id="map"></div>
					
						<script type="text/javascript"
							src="http://api.tianditu.gov.cn/api?v=4.0&tk=此处填写自己申请的key值"></script>
						<script>
							var map;
							var zoom = 18;
							var marker;
	
							function onLoad() {
								//初始化地图对象
								map = new T.Map("map");
								//设置显示地图的中心点和级别
								map.centerAndZoom(new T.LngLat(117.02548, 36.66401), zoom);
	
								var lnglat = new T.LngLat(117.02548, 36.66401);
								//创建信息窗口对象
								var infoWin = new T.InfoWindow();
								infoWin.setLngLat(lnglat);
								//设置信息窗口要显示的内容
								infoWin.setContent("济南市历下区泉城路世茂广场东座商场三楼E370 Red Copper专柜");
								//向地图上添加信息窗口
								map.addOverLay(infoWin);
							}
	
							function setCenterAndZoom(lat, lng, name) {
								// var lng = document.getElementById("lng").value;
								// var lat = document.getElementById("lat").value;
								// var zoom = document.getElementById("zoom").value;
								map.centerAndZoom(new T.LngLat(lng, lat), zoom);
	
								let newMarker = map.getOverlays(); // 获取到了地图上的所有点
								// console.log(newMarker, 'newMarker');
								for (let i = 0; i < newMarker.length; i++) {
									map.removeOverLay(newMarker[i])
								};
	
								var lnglat = new T.LngLat(lng, lat);
								//创建信息窗口对象
								var infoWin = new T.InfoWindow();
								infoWin.setLngLat(lnglat);
								//设置信息窗口要显示的内容
								infoWin.setContent(name);
								//向地图上添加信息窗口
								map.addOverLay(infoWin);
							}
						</script>
</body>

ok~


http://www.kler.cn/a/134608.html

相关文章:

  • 从0开始学习Linux——文件管理
  • 搭建Python2和Python3虚拟环境
  • 【MySQL】MySQL函数之JSON_EXTRACT
  • 【专题】计算机网络之网络层
  • GIS空间分析案例---城市公共设施配置与服务评价
  • Node.js笔记
  • maven打包插件配置模板
  • 汇编-指针
  • npm install 下载不下来依赖解决方案
  • git安装后报git: ‘remote-https‘ is not a git command. See ‘git --help‘.
  • 【Ant Design合集】自用总结
  • IDEA 集成 Docker 插件一键部署 SpringBoot 应用
  • 解决小程序路由超过10层限制
  • 面试题c/c++--语言基础
  • SDL2 播放音频数据(PCM)
  • TP_Link WR886N 硬改闪存16M内存64M,刷入openwrt
  • JSP 四大域对象
  • 分类预测 | Matlab实现基于PSO-SDAE粒子群优化算法优化堆叠去噪自编码器的数据分类预测
  • 【开源】基于JAVA的超市自助付款系统
  • NewStarCTF2023 Reverse方向Week3 ez_chal WP
  • Unity开发之C#基础-集合(字典)(Dictionary)
  • 【C++】​——多态性与模板(其一)
  • 前端 webpack 面试题
  • nginx学习(3)Nginx 负载均衡
  • 2023年中国地产SaaS分类、产业链及市场规模分析[图]
  • 在Go编程中调用外部命令的几种场景