网站前端开发,插入地图功能是很常见的,这个地图功能是不需要我们开发的,我们可以直接去调用百度地图插件,这样给我们带来很大的方便,不用我们花时间去开发地图插件功能!是不是很赞?下面由泽哥带你们完成这个功能。
百度地图实现原理:
布局 HTML结构部分。
样式 css层叠样式部分。
脚本 js部分调用。
接下来是安装虚拟机的步骤介绍:
一.登录百度地图网站:
二.填写好地理位置:
三.获取百度插件js代码
四.可以把获取到的代码直接复制放在一个HTML文件里。
有几个细节要注意一下:
如果你的前端js、css、html是分离的,那你就把js脚本代码放在js文件里,css样式代码放在css文件里。
window.onload =function(){}这个函数的作用是,等页面执行完之后再加载地图插件里的js脚本代码。
map.js代码示范:
window.onload =function(){
//创建和初始化地图函数:
function initMap(){
createMap();//创建地图
setMapEvent();//设置地图事件
addMapControl();//向地图添加控件
addMapOverlay();//向地图添加覆盖物
}
function createMap(){
map = new BMap.Map("map");
map.centerAndZoom(new BMap.Point(121.500436,31.246843),15);
}
function setMapEvent(){
map.enableScrollWheelZoom();
map.enableKeyboard();
map.enableDragging();
map.enableDoubleClickZoom()
}
function addClickHandler(target,window){
target.addEventListener("click",function(){
target.openInfoWindow(window);
});
}
function addMapOverlay(){
var markers = [
{content:"",title:"上海东方明珠公司",imageOffset: {width:-46,height:-21},position:{lat:31.246102,lng:121.505592}}
];
for(var index = 0; index < markers.length; index++ ){
var point = new BMap.Point(markers[index].position.lng,markers[index].position.lat);
var marker = new BMap.Marker(point,{icon:new BMap.Icon("http://api.map.baidu.com/lbsapi/createmap/images/icon.png",new BMap.Size(20,25),{
imageOffset: new BMap.Size(markers[index].imageOffset.width,markers[index].imageOffset.height)
})});
var label = new BMap.Label(markers[index].title,{offset: new BMap.Size(25,5)});
var opts = {
width: 200,
title: markers[index].title,
enableMessage: false
};
var infoWindow = new BMap.InfoWindow(markers[index].content,opts);
marker.setLabel(label);
addClickHandler(marker,infoWindow);
map.addOverlay(marker);
};
}
//向地图添加控件
function addMapControl(){
var scaleControl = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT});
scaleControl.setUnit(BMAP_UNIT_IMPERIAL);
map.addControl(scaleControl);
var navControl = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});
map.addControl(navControl);
var overviewControl = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT,isOpen:true});
map.addControl(overviewControl);
}
var map;
initMap();
}
在你需要显示地图的HTML代码<head>标签里引用css样式、百度地图秘钥、地图插件js的文件,jQuery插件。
百度地图秘钥可以自己申请:
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=6vvqoVROdWsq64FDVM0kaVO1F65oGOOR"></script>
jQuery插件可以在jQuery官网下载。
在显示地图的地方留一个(盒子)空间就可以,但id不要修改:
在css样式里,可以随意修改样式,例如可以定义宽高,边框,边距等等。
实现效果:
最后:想学习编程技术的朋友可以联系我们,我们会有专门的技术工程师跟你进行一对一指导学习!让你花更少的时间学习到更多,更牛逼的编程技术。如果你对泽易云分享的教程感兴趣不妨分享给身边需要的朋友!
微信/QQ:3371819598
扫二维码添加泽哥好友
关注微信公众号PHP项目中心,不但可以学习技术,还可以了解互联网世界的变化趋势,泽哥会定期给大家分享给更多精彩内容,转发朋友圈让更多人加入我们呗,等你来撩哦

内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:http://www.zeyiyun.com/web/201901/17.html