赞
踩
1、创建地图
map = L.map('canvas_id', { maxZoom: 18, minZoom: 1, zoom: _zoom, center: [_center.lat, _center.lng], contextmenu: true, // 右键点击事件,需要leaflet.contextmenu.min.js插件 contextmenuWidth: 140, contextmenuItems: [{ text: '关联设备...', callback: showCoordinates }] }) L.supermap.tiandituTileLayer( { layerType: 'img', key: '1d109683f4d84198e37a38c442d68311' } ).addTo(map); L.supermap .tiandituTileLayer({ isLabel: true, key: '1d109683f4d84198e37a38c442d68311' }) .addTo(map);
2、聚合
//删除原来的标注
markerClusterer && markerClusterer.clearLayers && markerClusterer.clearLayers()
// 初始化点聚合
markerClusterer = L.markerClusterGroup({
spiderfyOnMaxZoom: false,
showCoverageOnHover: false,
zoomToBoundsOnClick: true
})
// 聚合点点击事件,点击展开点
markerClusterer.on('clusterclick', function(e) {
e.layer.zoomToBounds()
})
3、点
let point = new L.marker([lat, lng], {icon: _selfIcon}) point.addEventListener('mouseover', function(e) { // 鼠标悬浮事件, 打开一个弹窗 L.popup({minWidth: 100}) .setLatLng(e.latlng.lat, e.latlng.lng) .setContent(_content) .openOn(map) }) point.addEventListener('mouseout', function(e){ // 鼠标移走关闭弹窗 map.closePopup() }) // 把点添加到 markerClusterer markerClusterer.addLayer(point) // 把 markerClusterer 添加到 map 中 markerClusterer.addTo(map)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。