如何从传单中的标记获取地图框坐标?

How to get map box coordinates from marker in Leaflet?

我有一张静态地图和标记(无法缩放和移动)。我需要每个标记检查地图结束的四个点。

有什么想法吗?

您需要的称为地图边界。地图的边界。如果您需要这些,您可以使用 L.Map 实例的 getBounds 方法,其中 return 是一个 L.LatLngBounds 对象:

var bounds = map.getBounds();

您可以使用该对象获取地图角点的坐标:

var northWest = bounds.getNorthWest(),
    northEast = bounds.getNorthEast(),
    southWest = bounds.getSouthWest(),
    southEast = bounds.getSouthEast();

这些方法 return L.LatLng 包含这些点坐标的对象:

northWest.lat // contains latitude of northwestern point
northWest.lng // contains longitude of northwestern point

我不确定为什么要让每个标记检查边界,因为您声明地图是静态的,这意味着每个标记都会 return 相同的结果。您可以检查一次边界并将结果与​​所有标记一起使用。

参考:

L.Map.getBounds(): http://leafletjs.com/reference.html#map-getbounds

L.LatLngBounds: http://leafletjs.com/reference.html#latlngbounds

L.LatLng: http://leafletjs.com/reference.html#latlng