如何在 mapboxgl 中显示适合移动设备屏幕大小的弹出窗口?
How can I show popup fit to the screen size of the mobile device in mapboxgl?
我想让我的 mapboxgl 弹出窗口适合我的移动设备屏幕大小。
new mapboxgl.Popup()
.setLngLat(e.features[0].geometry.coordinates)
.setHTML("htmlString")
.addTo(map);
我使用了上面的代码,但要查看弹出窗口的全部内容,我需要移动 right/left。
我还想在标记的中心显示弹出窗口。不是它出现left/right边
您可以使用 anchor
选项静态定位弹出窗口:
A string indicating the popup's location relative to the coordinate set via Popup#setLngLat . Options are 'top' , 'bottom' , 'left' , 'right' , 'top-left' , 'top-right' , 'bottom-left' , and 'bottom-right' . If unset the anchor will be dynamically set to ensure the popup falls within the map container with a preference for 'bottom'.
参考:https://www.mapbox.com/mapbox-gl-js/api/#popup
至于缩放弹出窗口应该会根据您提供的内容自动进行。但如果你真的需要,你可以 fiddle 使用它的样式,
<div class="mapboxgl-popup">
<div class="mapboxgl-popup-tip"></div>
<div class="mapboxgl-popup-content">
<button class="mapboxgl-popup-close-button" type="button" aria-label="Close popup">×</button>
<h1>Hello World!</h1>
</div>
</div>
但我真的不建议这样做。如果您需要特定大小左右,我会将内容包含在容器元素中并为其设置样式。
我想让我的 mapboxgl 弹出窗口适合我的移动设备屏幕大小。
new mapboxgl.Popup()
.setLngLat(e.features[0].geometry.coordinates)
.setHTML("htmlString")
.addTo(map);
我使用了上面的代码,但要查看弹出窗口的全部内容,我需要移动 right/left。
我还想在标记的中心显示弹出窗口。不是它出现left/right边
您可以使用 anchor
选项静态定位弹出窗口:
A string indicating the popup's location relative to the coordinate set via Popup#setLngLat . Options are 'top' , 'bottom' , 'left' , 'right' , 'top-left' , 'top-right' , 'bottom-left' , and 'bottom-right' . If unset the anchor will be dynamically set to ensure the popup falls within the map container with a preference for 'bottom'.
参考:https://www.mapbox.com/mapbox-gl-js/api/#popup
至于缩放弹出窗口应该会根据您提供的内容自动进行。但如果你真的需要,你可以 fiddle 使用它的样式,
<div class="mapboxgl-popup">
<div class="mapboxgl-popup-tip"></div>
<div class="mapboxgl-popup-content">
<button class="mapboxgl-popup-close-button" type="button" aria-label="Close popup">×</button>
<h1>Hello World!</h1>
</div>
</div>
但我真的不建议这样做。如果您需要特定大小左右,我会将内容包含在容器元素中并为其设置样式。