首页 > 其他分享 >百度地图API显示多个标注点带提示的代码

百度地图API显示多个标注点带提示的代码

时间:2022-12-11 13:31:59浏览次数:55  
标签:map point 点带 window API BMap var new 标注

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>百度地图API显示多个标注点带提示的代码</title>
<!--css-->
<link href="style/demo.css" rel="stylesheet" type="text/css" />
<!--javascript-->
<script src="scripts/jquery-1.9.1.js" type="text/javascript"></script>
<script src="scripts/demo.js" type="text/javascript"></script>
</head>
<body>
<div class="demo_main">
<fieldset class="demo_title">
百度地图API显示多个标注点带提示的代码
</fieldset>
<fieldset class="demo_content">
<div style="min-height: 300px; width: 100%;" id="map">
</div>
<script type="text/javascript">
var markerArr = [
{ title: "名称:广州火车站", point: "113.264531,23.157003", address: "广东省广州市广州火车站", tel: "12306" },
{ title: "名称:广州塔(赤岗塔)", point: "113.330934,23.113401", address: "广东省广州市广州塔(赤岗塔) ", tel: "18500000000" },
{ title: "名称:广州动物园", point: "113.312213,23.147267", address: "广东省广州市广州动物园", tel: "18500000000" },
{ title: "名称:天河公园", point: "113.372867,23.134274", address: "广东省广州市天河公园", tel: "18500000000" }

];

function map_init() {
var map = new BMap.Map("map"); // 创建Map实例
var point = new BMap.Point(113.312213, 23.147267); //地图中心点,广州市
map.centerAndZoom(point, 13); // 初始化地图,设置中心点坐标和地图级别。
map.enableScrollWheelZoom(true); //启用滚轮放大缩小
//向地图中添加缩放控件
var ctrlNav = new window.BMap.NavigationControl({
anchor: BMAP_ANCHOR_TOP_LEFT,
type: BMAP_NAVIGATION_CONTROL_LARGE
});
map.addControl(ctrlNav);

//向地图中添加缩略图控件
var ctrlOve = new window.BMap.OverviewMapControl({
anchor: BMAP_ANCHOR_BOTTOM_RIGHT,
isOpen: 1
});
map.addControl(ctrlOve);

//向地图中添加比例尺控件
var ctrlSca = new window.BMap.ScaleControl({
anchor: BMAP_ANCHOR_BOTTOM_LEFT
});
map.addControl(ctrlSca);

var point = new Array(); //存放标注点经纬信息的数组
var marker = new Array(); //存放标注点对象的数组
var info = new Array(); //存放提示信息窗口对象的数组
for (var i = 0; i < markerArr.length; i++) {
var p0 = markerArr[i].point.split(",")[0]; //
var p1 = markerArr[i].point.split(",")[1]; //按照原数组的point格式将地图点坐标的经纬度分别提出来
point[i] = new window.BMap.Point(p0, p1); //循环生成新的地图点
marker[i] = new window.BMap.Marker(point[i]); //按照地图点坐标生成标记
map.addOverlay(marker[i]);
marker[i].setAnimation(BMAP_ANIMATION_BOUNCE); //跳动的动画
var label = new window.BMap.Label(markerArr[i].title, { offset: new window.BMap.Size(20, -10) });
marker[i].setLabel(label);
info[i] = new window.BMap.InfoWindow("<p style=’font-size:12px;lineheight:1.8em;’>" + markerArr[i].title + "</br>地址:" + markerArr[i].address + "</br> 电话:" + markerArr[i].tel + "</br></p>"); // 创建信息窗口对象
}
marker[0].addEventListener("mouseover", function () {
this.openInfoWindow(info[0]);
});
marker[1].addEventListener("mouseover", function () {
this.openInfoWindow(info[1]);
});
marker[2].addEventListener("mouseover", function () {
this.openInfoWindow(info[2]);
});
}
//异步调用百度js
function map_load() {
var load = document.createElement("script");
load.src = "http://api.map.baidu.com/api?v=1.4&callback=map_init";
document.body.appendChild(load);
}
window.onload = map_load;
</script>
</fieldset>
</div>
</body>
</html>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>百度地图API显示多个标注点带提示的代码</title><!--css--><link href="style/demo.css" rel="stylesheet" type="text/css"/><!--javascript--><script src="scripts/jquery-1.9.1.js" type="text/javascript"></script><script src="scripts/demo.js" type="text/javascript"></script></head><body><div class="demo_main"><fieldset class="demo_title">
百度地图API显示多个标注点带提示的代码
</fieldset><fieldset class="demo_content"><div style="min-height: 300px; width: 100%;" id="map"></div><script type="text/javascript">var markerArr = [
{ title: "名称:广州火车站", point: "113.264531,23.157003", address: "广东省广州市广州火车站", tel: "12306" },
{ title: "名称:广州塔(赤岗塔)", point: "113.330934,23.113401", address: "广东省广州市广州塔(赤岗塔) ", tel: "18500000000" },
{ title: "名称:广州动物园", point: "113.312213,23.147267", address: "广东省广州市广州动物园", tel: "18500000000" },
{ title: "名称:天河公园", point: "113.372867,23.134274", address: "广东省广州市天河公园", tel: "18500000000" }

];

function map_init() {
var map =new BMap.Map("map"); // 创建Map实例var point =new BMap.Point(113.312213, 23.147267); //地图中心点,广州市 map.centerAndZoom(point, 13); // 初始化地图,设置中心点坐标和地图级别。 map.enableScrollWheelZoom(true); //启用滚轮放大缩小//向地图中添加缩放控件var ctrlNav =new window.BMap.NavigationControl({
anchor: BMAP_ANCHOR_TOP_LEFT,
type: BMAP_NAVIGATION_CONTROL_LARGE
});
map.addControl(ctrlNav);

//向地图中添加缩略图控件var ctrlOve =new window.BMap.OverviewMapControl({
anchor: BMAP_ANCHOR_BOTTOM_RIGHT,
isOpen: 1
});
map.addControl(ctrlOve);

//向地图中添加比例尺控件var ctrlSca =new window.BMap.ScaleControl({
anchor: BMAP_ANCHOR_BOTTOM_LEFT
});
map.addControl(ctrlSca);

var point =new Array(); //存放标注点经纬信息的数组var marker =new Array(); //存放标注点对象的数组var info =new Array(); //存放提示信息窗口对象的数组for (var i =0; i < markerArr.length; i++) {
var p0 = markerArr[i].point.split(",")[0]; //
var p1 = markerArr[i].point.split(",")[1]; //按照原数组的point格式将地图点坐标的经纬度分别提出来 point[i] =new window.BMap.Point(p0, p1); //循环生成新的地图点 marker[i] =new window.BMap.Marker(point[i]); //按照地图点坐标生成标记 map.addOverlay(marker[i]);
marker[i].setAnimation(BMAP_ANIMATION_BOUNCE); //跳动的动画var label =new window.BMap.Label(markerArr[i].title, { offset: new window.BMap.Size(20, -10) });
marker[i].setLabel(label);
info[i] =new window.BMap.InfoWindow("<p style=’font-size:12px;lineheight:1.8em;’>"+ markerArr[i].title +"</br>地址:"+ markerArr[i].address +"</br> 电话:"+ markerArr[i].tel +"</br></p>"); // 创建信息窗口对象 }
marker[0].addEventListener("mouseover", function () {
this.openInfoWindow(info[0]);
});
marker[1].addEventListener("mouseover", function () {
this.openInfoWindow(info[1]);
});
marker[2].addEventListener("mouseover", function () {
this.openInfoWindow(info[2]);
});
}
//异步调用百度jsfunction map_load() {
var load = document.createElement("script");
load.src ="http://api.map.baidu.com/api?v=1.4&callback=map_init";
document.body.appendChild(load);
}
window.onload = map_load;
</script></fieldset></div></body></html>



标签:map,point,点带,window,API,BMap,var,new,标注
From: https://blog.51cto.com/u_11090397/5928281

相关文章

  • Selenium3自动化测试实战--第4章 WebDriver API 3--定位一组元素,多表单切换,多窗口切换
    4.8定位一组元素书中是elements=find_elements_by_id()官网是elements=find_elements(By.ID,'')然后for循环 foreinelements:4.9多表单切换web应用中经常......
  • VUE3 API之reactive和ref常见问题解决
    reactive解构最深的一层,失去响应性问题<scriptsetuplang="ts">lettarget={a:{b:1}};lettarget1={c:1};constobj=reactive(target)constobj1=......
  • 功能强大的国产API管理神器 Eolink,亲测好用
    目录​​前言​​​​一、Eolink工具介绍​​​​1.Eolink是什么​​​​2.Eolink独创的DTDD​​​​3.API全生命周期管理​​​​4.Eolink的使用​​​​二、Eolink功......
  • Eolink神技之一、基于数据库智能生成API文档
    Eolink神技之一、基于数据库智能生成API文档目录​​Eolink神技之一、基于数据库智能生成API文档​​​​Eolink数据库智能API文档解决的问题​​​​演示流程​​​​一、......
  • 这款国产API工具也太强了吧!让我放弃了postman
    为什么弃用postman转用Eolink?程序员在接口开发完成后都通常需要自测,当返回结果根据符合预期时,则表示代表接口可用。自己以前用的是postman来进行接口测试,但postman只能进行......
  • .NET 6 的轻量级 Webapi 框架 FastEndpoints
    Github: https://github.com/FastEndpointsFastEndpoints(fast-endpoints.com)基于.NET6的轻量级Webapi框架FastEndpoints 大家好,我是等天黑。FastEndpoin......
  • fastapi身份认证
    官方文档FastApi提供了OAuth2PasswordBearer类对OAuth2中的password授权模式提供了支持。一、实现逻辑创建OAuth2PasswordBearer实例并指明tokenurl(认证用户获取tok......
  • C#中的WebAPI
    前端用:vue3,后端:net6,的结合代码vue3手动创建:勾选1、路由配置:router。2、vuex状态管理:store类似全局变量。3、在加上UI库:element-plus模板大致UI库模板如下:安装ui库命令:npmi......
  • 10:Java人脸识别认证-Java API 实战
    (目录)1.提出问题,引入SDK的概念什么是SDK?我们并不具备开发人脸识别的能力,但我们可以用大公司已经开发好的工具或者功能,来实现人脸识别,而大公司提供的就叫SDK(Software......
  • API接口文档实例
    接口描述获取接口统一鉴权码token接口,此接口调用需要appid凭证和secret密钥,每个微信只有一对请求URLhttps://api.weixin.qq.com/cgi-bin/token?grant_type=client_cr......