检测覆盖是否在视图中
Detect if overlay is in view
如何检测覆盖元素当前是否可见?
我认为有可能通过 DOM-元素的边界框获取此信息,但这对我来说似乎不是一个好的解决方案。
有没有办法使用 openlayers API 找出答案?
您可以检查 ol.Overlay
位置是否在 ol.View
范围内:
var overlay_position = overlay.getPosition();
var view_extent = map.getView().calculateExtent(map.getSize());
console.info(ol.extent.containsCoordinate(view_extent, overlay_position));
如何检测覆盖元素当前是否可见?
我认为有可能通过 DOM-元素的边界框获取此信息,但这对我来说似乎不是一个好的解决方案。
有没有办法使用 openlayers API 找出答案?
您可以检查 ol.Overlay
位置是否在 ol.View
范围内:
var overlay_position = overlay.getPosition();
var view_extent = map.getView().calculateExtent(map.getSize());
console.info(ol.extent.containsCoordinate(view_extent, overlay_position));