我正在尝试customize the attribution section of a Leaflet.js map。归因的自定义部分是Leaflet |
之后的所有内容,如屏幕截图所示。
我的自定义属性字符串添加如下:
var ATTRIBUTION = '...'
var map;
$(document).ready(function() {
var tiles = new L.TileLayer(TILES_URL, {attribution: ATTRIBUTION});
map = new L.Map('map').addLayer(tiles);
// ...
});
Leaflet.js将自身添加到我现有的属性字符串的前面,可以在sources中看到。我该如何附加Leaflet归因字符串?
最佳答案
您需要执行的操作是删除原始属性,以便您可以创建一个没有“ Leaflet prefix”的新属性。
首先禁用默认的归因控件:
var map = L.map('map', {attributionControl: false}).setView(latLng, 13);
然后创建一个没有默认Leaflet前缀的新归因控件(在添加任何图层之前执行此操作):
L.control.attribution({prefix: ''}).addTo(map);
现在,“图层”选项中的所有属性都将添加到新控件中。
请注意,如果您仍然希望将“传单”部分保留在归因字符串的最后,则需要将其添加到其余归因中。
Here is a JSFiddle demo。