繁体   English   中英

Leaflet MarkerCluster和自定义标记

[英]Leaflet MarkerCluster and customized markers

我正在尝试使用插件MarkerCluster和自定义标记图标来实现Leaflet地图。 该代码在渲染群集时效果很好,但是标记存在一些问题。 实际上,渲染的标记是经典的传单蓝色别针,而不是我自定义的图标(即logo_circle.png),这是代码:

var tiles = L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
            attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors',
            maxZoom: 18
            }),
            latlng = L.latLng(37.366667, 128.4);

        var map = L.map('map', {center: latlng, zoom: 9, layers: [tiles]});


        var OlympicIcon = L.icon({
            iconUrl: 'logo_circle.png',
            iconSize:     [36, 36], // size of the icon
            iconAnchor:   [0, 0], // point of the icon which will correspond to marker's location
            popupAnchor:  [0, 0] // point from which the popup should open relative to the iconAnchor
        });


        var markers = L.markerClusterGroup();

        for (var i = 0; i < addressPoints.length; i++) {
            var a = addressPoints[i];
            var title = a[2];
            var marker = L.marker(new L.LatLng(a[0], a[1]), { title: title }, {icon: myIcon});
            marker.bindPopup(title);
            markers.addLayer(marker);
        }

        markers.addLayer(OlympicIcon);

        map.addLayer(markers);

怎么了?

你的icon选项应该仅仅是第二个参数的成员 (选项) L.marker厂,旁边title选项,而不是作为一个单独的第三个参数:

var marker = L.marker(new L.LatLng(a[0], a[1]), {
  title: title,
  icon: myIcon
});

另请参阅https://gis.stackexchange.com/questions/183725/leaflet-pop-up-does-not-work-with-geojson-data/183832#183832

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM