Javascript 将google maps事件侦听器添加到InfoWindows中的自定义关闭按钮

Javascript 将google maps事件侦听器添加到InfoWindows中的自定义关闭按钮,javascript,google-maps-api-3,infowindow,Javascript,Google Maps Api 3,Infowindow,目前,我正试图在谷歌地图中实现我自己的自定义信息窗口。我已经找到了一个很好的教程。从教程中,我成功地创建了自己的自定义信息窗口,但是我无法在信息窗口中实现自己的关闭按钮 根据这些代码,我创建了自己的关闭按钮,并将其附加到InfoWindows的内容中 然后我使用maps.google.event.adddomstener()将事件侦听器添加到元素中。: var closeBtn = $('#iw-close-btn').get(); google.maps.event.addListener(

目前,我正试图在谷歌地图中实现我自己的自定义信息窗口。我已经找到了一个很好的教程。从教程中,我成功地创建了自己的自定义信息窗口,但是我无法在信息窗口中实现自己的关闭按钮

根据这些代码,我创建了自己的关闭按钮,并将其附加到InfoWindows的内容中

然后我使用maps.google.event.adddomstener()将事件侦听器添加到元素中。

var closeBtn = $('#iw-close-btn').get();
google.maps.event.addListener(closeBtn, 'click', function() {
   console.log('closed');
   infowindow.close();
});
但每当我尝试单击元素时,它都不起作用(日志也不会出现)

下面是我使用codepen.io的全部示例代码:

你能帮我一个解决办法吗?任何形式的帮助都将不胜感激。谢谢

  • 您说您使用
    adddomstener
    添加事件侦听器,但您的代码显示了
    addListener
    的用法

  • 您识别关闭按钮的方式不正确。简单看一下javascript控制台就会知道这一点。改用
    closeBtn[0]

  • 因此,完整的代码是:

    google.maps.event.addListener(infowindow, 'domready', function() {
    
        var closeBtn = $('#iw-close-btn').get();
    
        google.maps.event.addDomListener(closeBtn[0], 'click', function() {
    
            infowindow.close();
        });
    });
    

  • 您说您使用
    adddomstener
    添加事件侦听器,但您的代码显示了
    addListener
    的用法

  • 您识别关闭按钮的方式不正确。简单看一下javascript控制台就会知道这一点。改用
    closeBtn[0]

  • 因此,完整的代码是:

    google.maps.event.addListener(infowindow, 'domready', function() {
    
        var closeBtn = $('#iw-close-btn').get();
    
        google.maps.event.addDomListener(closeBtn[0], 'click', function() {
    
            infowindow.close();
        });
    });