L.Control是leaflet中所有控件的基类,如Scale,Zoom等。通过扩展 L.Control,可以在map容器上定义一些自定义控件(个人觉得这种方式并不好,开发维护起来比较麻烦,好的样式效果实现麻烦)。
下面我们尝试写一个自定义控件,在地图上显示我们的官网图标。
自定义一个控件:
L.Control.Logo = L.Control.extend({
options: {
position: 'topright' //初始位置
},
initialize: function (options) {
L.Util.extend(this.options, options);
},
onAdd: function (map) {
//创建一个class为 leaflet-control-container的div
this._container = L.DomUtil.create('div', 'leaflet-control-container');
//创建一个图片要素
var img = L.DomUtil.create('img',