openlayers添加按钮_OpenLayers系列(4)——使用控制器 | 学步园

控制器可以使用在地图上,也可以使用在地图之外的元素如

中。

添加控制器有两种方式:

1.在map对象初始化时以js数组的形式把OpenLayers控制器传入

2.在map对象初始化后,调用addControl()来添加单个控制器或者addControls()传入一个控制器数组对象

当一个map对象被初始化后,默认会有4种控制器:

1.OpenLayers.Control.Navigation:

用来控制地图与鼠标事件的互动,如拖曳,缩放,滚动,双击。

2.OpenLayers.Control.PanZoom:

在地图的左上方添加一个平移与缩放的工具条

3.OpenLayers.Control.ArgParser:

使地图可以在缩放到指定大小时根据URL参数打开或关闭一些图层

4.OpenLayers.Control.Attribution:

允许通过layer向map添加属性

如果想要创建一个不包含任何控制器的地图,则在创建map对象时使用下面代码

map = new OpenLayers.Map('map_element', {

controls: [] //设置一个空的控制器数组以清除默认控制器

});

示例:向地图添加控制器

代码:

My OpenLayers Map

var map;

function init() {

//创建控制器数组

var navigation_control = new OpenLayers.Control.Navigation({});

var controls_array = [

navigation_control,

new OpenLayers.Control.PanZoomBar({}),

new OpenLayers.Control.LayerSwitcher({}),

new OpenLayers.Control.Permalink(),

new OpenLayers.Control.MousePosition({})

];

map = new OpenLayers.Map('map_element', {

controls: controls_array

});//初始化map时加入定义的控制器

var wms_layer = new Open

你可能感兴趣的:(openlayers添加按钮)