首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Leaflet e.target.getLatLng()在与markercluster配对时不起作用

Leaflet e.target.getLatLng()在与markercluster配对时不起作用
EN

Stack Overflow用户
提问于 2016-07-26 01:16:54
回答 1查看 606关注 0票数 1

我使用的是Leafet (更准确地说是django-leaflet),我已经能够在任何标记上形成一个点击(.on),这样它就可以平移到标记并放大到10。这是通过使用map.setView(e.target.getLatLng(),10)来完成的;

但是,我现在已经实现了leaflet markercluster,getLatLng()现在似乎是一个未定义的函数?

没有markercluster的代码,它工作得很好:

代码语言:javascript
复制
function onEachFeature(feature, layer) {

            layer.bindPopup(feature.properties.name).on('click', clickZoomy);

            function clickZoomy(e) {
              if (map.getZoom() < 10){
                map.setView(e.target.getLatLng(),10) //ZOOM
              } else{
                map.setView(e.target.getLatLng())
              }};

下面是我在markercluster中使用的代码:

代码语言:javascript
复制
var multimarker = new L.MarkerClusterGroup();

multimarker.addLayer(L.marker([52.526013, 13.398351],{icon: markHospital})).on('click', clickZoom);
multimarker.addLayer(L.marker([52.513666, 13.389633],{icon: markHospital})).on('click', clickZoom);
multimarker.addLayer(L.marker([52.512842, 13.389277],{icon: markHospital})).on('click', clickZoom);

map.addLayer(multimarker);  function clickZoom(e) {
    map.setView(e.target.getLatLng(),10)};
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-26 02:12:03

我把括号放错地方了。

代码语言:javascript
复制
multimarker.addLayer(L.marker([52.526013, 13.398351],{icon: markHospital})).on('click', clickZoom);

必须更改为

代码语言:javascript
复制
multimarker.addLayer(L.marker([52.526013, 13.398351],{icon: markHospital}).on('click', clickZoom));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38573836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档