当地图在页面顶部时,放大地图;当地图被放大时,滚动页面。

问题描述 投票:0回答:0

我想在地图放大的时候滚动页面,但在页面顶部的时候放大。也许有更好的方法来实现这一点,这样在移动设备上就能更好地工作。

现在,它有点工作,但它是错误的,我不知道如何改进它。

这是我目前所掌握的情况。


    map.on('zoomstart', () => {
        if (10 < window.scrollY) map.scrollZoom.disable()
    })

    map.on('idle', () => {
        if (window.scrollY <= 10) map.scrollZoom.enable()
    })

    map.on('zoomend', async () => {
        const e = map.getBounds().getEast()
        const w = map.getBounds().getWest()

        console.log(e, w)

        if (w < -179.9 && 179.9 < e) {
            window.scrollTo({ top: window.scrollY + window.innerHeight * 0.1 })
            map.fitBounds(
                [
                    [170, 0],
                    [-170, 0],
                ],
                { animate: false },
            )
        }
    })
mapbox-gl-js
© www.soinside.com 2019 - 2024. All rights reserved.