Google Maps API - addListener 忽略地图上的点击事件

Google Maps API - addListener ignoring click events on map

提问人:Dabrowski 提问时间:2/4/2023 更新时间:2/4/2023 访问量:123

问:

我正在尝试让 Google Maps API 注册地图点击,但由于某种原因我无法让它工作!

    map = new google.maps.Map( document.getElementById("map"), {
        center: { lat: 53.3674604, lng: -1.2427984 },
        zoom: 10,
        zoomControl: true,
        mapTypeControl: false,
        fullscreenControl: false,
    });

    map.addListener( 'click', () => { console.log( "Hello"); })
    google.maps.event.addListener( map, 'click', () => { console.log( "Hello"); });

我尝试过以两种方式添加事件 - 我知道我只需要其中之一。

将完全相同的代码添加到标记中时是可以的。与事件“center_changed”完全相同的代码工作正常。

出于某种原因,它只是忽略了地图上的点击事件?

JavaScript API 事件 点击 地图

评论

1赞 Kalnode 2/4/2023
你对我来说似乎很好;它类似于我使用的。在任何情况下,您都应该只声明一个侦听器,以免引起故障。无论如何,你是否有任何元素阻碍了你的点击,也许是地图上的一些透明层?尝试使用检查器并单击地图;首先选择哪个元素?map.addListener
0赞 Dabrowski 2/4/2023
不,没有透明层。如果我对地图上的标记执行完全相同的操作,它就会起作用。在地图上单击和拖动可以正常工作,因此应该注册事件。

答:

0赞 Dabrowski 2/4/2023 #1

我傻了。

地图上有形状,我正在使用形状区域来测试我的点击次数。意外发现点击处理程序在空白区域工作正常。

将单击侦听器添加到形状中,它工作正常。