百度地图api如何使用

 更新时间:2015年08月03日 15:34:55   投稿:mrr  
如果想用百度地图api,首先需要先获取一个百度地图api的密钥,然后引入百度地图的api,这篇文章就讲下百度地图api如何使用的相关资料,需要的朋友可以参考下

如果想用百度地图api,首先需要先获取一个百度地图api的密钥,然后引入百度地图的api,接下来,我们详细介绍下获取、引入api密钥的技巧,以及通过代码给大家详解下百度地图api如何使用,具体请看下文。

首先 ,如果想调用百度地图api,你需要获取一个百度地图api的密钥。

申请密钥很简单,在百度地图api的首页就有相关链接,填写相关信息百度就会给你一个密钥了。

接下来,就是引入百度地图的api

关键代码如下:

复制代码 代码如下:

<script type="text/javascript" src="http://api.map.baidu.com/api?ak=yourkey&v=2.0&services=false"></script>

接下来我们就可以创建一个地图试试看了。(Js代码)

复制代码 代码如下:

var map = new BMap.Map("container");          // 创建地图实例
var point = new BMap.Point(120.391655,36.067588);  // 创建点坐标
map.centerAndZoom(point, 15);
//map.centerAndZoom("北京", 15);
//map.centerAndZoom("Hongkong", 15);    
           
这里需要说明三点:

1.map.centerAndZoom方法创建地图,第一个参数可以是根据之前创建好的一个点为中心,创建出地图,也可以根据城市地区的中文名称创建地图。(如果拼写正确,可以根据城市的英文名称来创建)

2. map.centerAndZoom第二个参数是地图缩放级别,最大为19,最小为0。(但实际当缩小到3的时候就已经。。。)

3.BMap.Map方法创建地图时候需要一个容器(地图会根据容器的大小自动进行调整。),填写相关容器的id。

关于地图大小:

可以通过

复制代码 代码如下:

map.setZoom();

方法主动控制地图大小级别。

也可以通过设置

复制代码 代码如下:

map.enableScrollWheelZoom(true);

利用鼠标滚轮控制大小。

百度地图提供了非常丰富的功能空间共我们使用。

1.Control:控件的抽象基类,所有控件均继承此类的方法、属性。通过此类您可实现自定义控件。

2.NavigationControl:地图平移缩放控件,PC端默认位于地图左上方,它包含控制地图的平移和缩放的功能。移动端提供缩放控件,默认位于地图右下方。

3.OverviewMapControl:缩略地图控件,默认位于地图右下方,是一个可折叠的缩略地图。

4.ScaleControl:比例尺控件,默认位于地图左下方,显示地图的比例关系。

5.MapTypeControl:地图类型控件,默认位于地图右上方(地图,卫星,三维)。

6.CopyrightControl:版权控件,默认位于地图左下方。

7.GeolocationControl:定位控件,针对移动端开发,默认位于地图左下方。

效果图

 

复制代码 代码如下:

map.addControl(new BMap.NavigationControl());//缩放平移控件
map.addControl(new BMap.ScaleControl());    //比例尺
map.addControl(new BMap.OverviewMapControl());//缩略图
map.addControl(new BMap.MapTypeControl()); //地图类型
map.setCurrentCity("青岛");

注意:当设置城市信息时,MapTypeControl的切换功能才能可用


地图事件:
百度地图API中的大部分对象都含有addEventListener方法,我们可以通过该方法来监听对象事件。
实例:

复制代码 代码如下:

map.addEventListener("click", function(){   
 alert("您点击了地图。");   
});

当我们不再希望监听事件时,可以将事件监听进行移除。每个API对象提供了removeEventListener用来移除事件监听函数。

复制代码 代码如下:

map.removeEventListener("click", functionA);
map.addEventListener("click", functionA);

地图遮盖物:

Overlay:覆盖物的抽象基类,所有的覆盖物均继承此类的方法。

Marker:标注表示地图上的点,可自定义标注的图标。

Label:表示地图上的文本标注,您可以自定义标注的文本内容。

Polyline:表示地图上的折线。

Polygon:表示地图上的多边形。多边形类似于闭合的折线,另外您也可以为其添加填充颜色。

Circle: 表示地图上的圆。

InfoWindow:信息窗口也是一种特殊的覆盖物,它可以展示更为丰富的文字和多媒体信息。注意:同一时刻只能有一个信息窗口在地图上打开。

标注示例:

var point = new BMap.Point(120.389472,36.072362);//默认 可以通过Icon类来指定自定义图标
 var marker = new BMap.Marker(point);
 var label = new BMap.Label("青岛市政府",{offset:new BMap.Size(20,-10)});//标注标签 
 marker.setLabel(label)//设置标注说明
 marker.enableDragging();//标注可以拖动的
 marker.addEventListener("dragend", function(e){ 
  alert(e.point.lng + ", " + e.point.lat);//打印拖动结束坐标 
 }); 
 map.addOverlay(marker); 
 var point = new BMap.Point(120.387244,36.064835);
 var myIcon = new BMap.Icon("http://api.map.baidu.com/img/markers.png", new BMap.Size(23, 25));
 var marker2 = new BMap.Marker(point, {icon: myIcon}); 
 map.addOverlay(marker2);
 var infoWindow = new BMap.InfoWindow("<p style='font-size:14px;'>详细信息</p>"); //弹出窗口
 marker2.addEventListener("click", function(){
  this.openInfoWindow(infoWindow); 
 });

以上说明就是本文的全部内容,希望对大家使用百度地图api有所帮助。

相关文章

  • javascript 三种数组复制方法的性能对比

    javascript 三种数组复制方法的性能对比

    javascript 三种数组复制方法的性能对比,对于webkit, 使用concat; 其他浏览器, 使用slice.
    2010-01-01
  • JavaScript用document.write()输出换行的示例代码

    JavaScript用document.write()输出换行的示例代码

    这篇文章主要介绍了JavaScript用document.write()输出换行的示例代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法

    谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法

    发请求有两种方式,一种是用ajax,另一种是用form提交,默认的form提交如果不做处理的话,会使页面重定向。本篇文章通过实例给大家介绍基于iframe/FormData/FileReader三种无刷新上传文件的方法,感兴趣的朋友一起学习吧
    2015-12-12
  • 小程序自定义圆形进度条

    小程序自定义圆形进度条

    这篇文章主要为大家详细介绍了小程序自定义圆形进度条,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • javascript中类型判断的最佳方式

    javascript中类型判断的最佳方式

    这篇文章介绍了javascript中类型判断的最佳方式,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • 聊聊JavaScript如何实现继承及特点

    聊聊JavaScript如何实现继承及特点

    “继承”是面向对象编程里面经常提及到的概念,它的目的是实现代码复用。这篇文章主要介绍了聊聊JavaScript如何实现继承及特点,有兴趣的可以了解一下。
    2017-04-04
  • Three.js GLTF模型加载实现示例详解

    Three.js GLTF模型加载实现示例详解

    这篇文章主要为大家介绍了Three.js GLTF模型加载实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • JS+JSP checkBox 全选具体实现

    JS+JSP checkBox 全选具体实现

    本文为大家介绍下使用JS+JSP实现checkBox全选,下面有个不错的示例,感兴趣的朋友可以参考下
    2014-01-01
  • 同一个网页中实现多个JavaScript特效的方法

    同一个网页中实现多个JavaScript特效的方法

    这篇文章主要介绍了同一个网页中实现多个JavaScript特效的方法,实例分析了多个特效的实现原理与相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02
  • 微信小程序中实现微信支付完整步骤

    微信小程序中实现微信支付完整步骤

    这篇文章主要给大家介绍了关于微信小程序中实现微信支付的相关资料,微信小程序支付是一种常见的支付方式,实现起来相对较为复杂,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-11-11

最新评论