1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 百度地图调用加载显示Marker 并添加点击事件

百度地图调用加载显示Marker 并添加点击事件

时间:2018-10-18 05:30:10

相关推荐

百度地图调用加载显示Marker 并添加点击事件

百度地图调用加载显示Marker,并添加点击事件

注册百度开发者账号,申请应用AK

百度地图开发平台官网

点击右上角控制台,选择创建应用

创建应用,勾选浏览器端,白名单填写*

注:如上线更改为公网IP,如浏览器端显示调用选择浏览器端,如服务端调用数据接口开发则选择服务端,按需创建即可。此处为浏览器端加载显示地图,故选择浏览器端

点击确认,获取AK

返回控制台-我的应用即可查看应用AK

网页端标签引入

<script type="text/javascript" src="http://api./api?v=2.0&ak=申请的ak"></script>

页面声明

声明div容器加载显示地图,注div要有宽高,id为加载绑定地图的要素

<div class="map-box" id="map" ></div>

调用api加载显示地图

var map; //Map实例//地图中心坐标var mapCenterX = 126.534943;var mapCenterY = 45.808585;//加载显示marker数组var markerArr;function map_init() {//传入绑定的地图容器idmap = new BMap.Map("map");//初始化地图,设置中心点坐标和地图级别。map.centerAndZoom(new BMap.Point(mapCenterX, mapCenterY),12);//启用滚轮放大缩小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 overviewControl = new BMap.OverviewMapControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT,isOpen: true});map.addControl(overviewControl);//向地图中添加比例尺控件var ctrlSca = new window.BMap.ScaleControl({anchor: BMAP_ANCHOR_BOTTOM_LEFT});map.addControl(ctrlSca);}$(document).ready(function() {//页面初始化/*$.ajax({type: "POST",url: "",data: {},dataType: "json",success: function(data){markerArr = data.result.markerArr;initData();} });*/markerArr = [{markerId: 1,title: "marker1",point: "126.526607,45.802051",state: 0},{markerId: 2,title: "marker2",point: "126.559952,45.810997",state: 0}];initData();});

初始化加载显示marker,可根据状态不同显示不同marker

function initMaker() {//绘制marker for(var i = 0; i < markerArr.length; i++) {idArr.push(markerArr[i].markerId);var p0 = markerArr[i].point.split(",")[0];var p1 = markerArr[i].point.split(",")[1];var state = markerArr[i].state;var maker = addMarker(new window.BMap.Point(p0, p1), i, markerArr[i].title, idArr, state);}}// 添加marker function addMarker(point, index, title, idArr, state) {var myIcon;//状态1if(state == 0) {myIcon = new BMap.Icon("本地自定义图标路径", new BMap.Size(30, 30));}//状态2if(state == 1) {myIcon = new BMap.Icon("本地自定义图标路径", new BMap.Size(30, 30));}var marker = new BMap.Marker(point, {icon: myIcon});var label = new window.BMap.Label(title, {offset: new window.BMap.Size(20, -10)});label.setStyle({backgroundColor: "#fff",maxWidth: "none",color: "#000",fontSize: "12px",height: "20px",lineHeight: "20px",fontFamily: "微软雅黑"});marker.setLabel(label);//marker点击触发事件marker.addEventListener("click", function() {//此处添加marker点击事件});map.addOverlay(marker);//跳动的动画marker.setAnimation(BMAP_ANIMATION_BOUNCE);return marker;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。