比例尺、缩略图、平移缩放之百度地图添加控件方法
这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
JavaScript 客户端脚本语言
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
这篇文章主要介绍了比例尺、缩略图、平移缩放之百度地图添加控件方法, 大家都知道百度地图 API 中提供了丰富的控件,您还可以通过 Control 类来实现自定义控件,需要的朋友可以参考下
下面通过图文并茂的方式给大家详细介绍下比例尺、缩略图、平移缩放之百度地图添加控件方法。
地图控件概述
百度地图上负责与地图交互的 UI 元素称为控件。百度地图 API 中提供了丰富的控件,您还可以通过 Control 类来实现自定义控件。
地图 API 中提供的控件有:
Control:控件的抽象基类,所有控件均继承此类的方法、属性。通过此类您可实现自定义控件。
NavigationControl:地图平移缩放控件,PC 端默认位于地图左上方,它包含控制地图的平移和缩放的功能。移动端提供缩放控件,默认位于地图右下方。
OverviewMapControl:缩略地图控件,默认位于地图右下方,是一个可折叠的缩略地图。
ScaleControl:比例尺控件,默认位于地图左下方,显示地图的比例关系。
MapTypeControl:地图类型控件,默认位于地图右上方。
CopyrightControl:版权控件,默认位于地图左下方。
GeolocationControl:定位控件,针对移动端开发,默认位于地图左下方
向地图添加控件
可以使用 Map.addControl() 方法向地图添加控件。在此之前地图需要进行初始化。例如,要将标准地图控件添加到地图中,可在代码中添加如下内容:
varmap=newBMap.Map("container");
map.centerAndZoom(newBMap.Point(116.404,39.915),11);
map.addControl(newBMap.NavigationControl());
可以向地图添加多个控件。在本例中我们向地图添加一个平移缩放控件、一个比例尺控件和一个缩略图控件。在地图中添加控件后,它们即刻生效。
map.addControl(newBMap.NavigationControl());
map.addControl(newBMap.ScaleControl());
map.addControl(newBMap.OverviewMapControl());
map.addControl(newBMap.MapTypeControl());
map.setCurrentCity("北京");// 仅当设置城市信息时,MapTypeControl的切换功能才能可用
控制控件位置
初始化控件时,可提供一个可选参数,其中的 anchor 和 offset 属性共同控制控件在地图上的位置。
控件停靠位置 anchor 表示控件的停靠位置,即控件停靠在地图的哪个角。当地图尺寸发生变化时,控件会根据停靠位置的不同来调整自己的位置。anchor 允许的值为:
BMAP_ANCHOR_TOP_LEFT 表示控件定位于地图的左上角。
BMAP_ANCHOR_TOP_RIGHT 表示控件定位于地图的右上角。
BMAP_ANCHOR_BOTTOM_LEFT 表示控件定位于地图的左下角。
BMAP_ANCHOR_BOTTOM_RIGHT 表示控件定位于地图的右下角。
控件位置偏移
除了指定停靠位置外,还可以通过偏移量来指示控件距离地图边界有多少像素。如果两个控件的停靠位置相同,那么控件可能会重叠在一起,这时就可以通过偏移值使二者分开显示。
本示例将比例尺放置在地图的左下角,由于 API 默认会有版权信息,因此需要添加一些偏移值以防止控件重叠。
varopts={
offset:newBMap.Size(150,5)
}
map.addControl(newBMap.ScaleControl(opts));
修改控件配置
地图 API 的控件提供了丰富的配置参数,您可参考 API 文档来修改它们以便得到符合要求的控件外观。例如,NavigationControl 控件就提供了如下类型:
BMAP_NAVIGATION_CONTROL_LARGE表示显示完整的平移缩放控件。
BMAP_NAVIGATION_CONTROL_SMALL表示显示小型的平移缩放控件。
BMAP_NAVIGATION_CONTROL_PAN表示只显示控件的平移部分功能。
BMAP_NAVIGATION_CONTROL_ZOOM表示只显示控件的缩放部分功能。
下图从左向右依次展示了上述不同类型的控件外观:
上图前 4 个为 PC 端平移缩放控件样式,最后一个为移动端缩放控件样式。
下面的示例将调整平移缩放地图控件的外观。
上图前 4 个为 PC 端平移缩放控件样式,最后一个为移动端缩放控件样式。
下面的示例将调整平移缩放地图控件的外观。
添加缩略图
body,html{width:100%;height:100%;margin:0;font-family:"微软雅黑";}#allmap{width:100%;height:500px;}
#r-result{width:100%;margin-top:5px;} p{margin:5px; font-size:14px;}
添加/删除地图类型、缩略图控件