【问题标题】:How to detect button click in googlemaps infowindow [duplicate]如何检测googlemaps infowindow中的按钮点击[重复]
【发布时间】:2014-04-25 14:21:10
【问题描述】:

使用谷歌地图 V3

我正在尝试向我的 googlemap 上的 infoWindow 添加一个按钮。 infoWindows 和按钮按预期显示。我正在尝试捕获按钮的 onclick 事件。这是我目前所拥有的:

var contentBtn = '<p><button id="marker'+numby+'" class="iwLink" href="#" >Done</button></p>';
        google.maps.event.addListener(marker, 'click', function() {
            infowindow.setContent(address+contentBtn);
            infowindow.open(map, this);
        });

        google.maps.event.addDomListener(contentBtn, 'click', function() {

          alert($(this).attr('id'));
        });

infoWindow 与按钮一起按预期显示。但是,我在控制台日志中也收到以下错误:

未捕获的类型错误:无法读取未定义的属性“单击”
这似乎是由google.maps.event.addDomListener(contentBtn, 'click', function() 行引起的

【问题讨论】:

    标签: javascript jquery google-maps


    【解决方案1】:

    在信息窗口完成渲染之前,按钮不会添加到 DOM。在infowindow domready event 触发之前,您无法使用 getElementById(或 jquery 等效项)找到它。

    var contentBtn = '<p><button id="marker'+numby+'" class="iwLink" href="#" >Done</button></p>';
        google.maps.event.addListener(marker, 'click', function() {
            infowindow.setContent(address+contentBtn);
            infowindow.open(map, this);
        });
        google.maps.event.addListener(infowindow, 'domready', function() {
          google.maps.event.addDomListener(contentBtn, 'click', function() {
    
            alert($(this).attr('id'));
          });
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-01
      • 1970-01-01
      相关资源
      最近更新 更多