按钮事件InfoWindow Google Map APi

时间:2015-10-05 08:03:38

标签: javascript google-maps google-maps-api-3

我有自定义InfoWindows的Google地图。 Alle InfoWindows有一个具有锚链接的按钮。每个按钮都应打开一个覆盖点。

我的InfoWindows设置如下:

var infoWindowContent = [
    ['<div class="info_content">' +
    '<img src="images/villa-heinepark-klein.jpg"/>' +
    '<div class="info_text">' +
    '<h2 class="firstHeading">Villa im Heinepark</h2>' +
    '<p>' +
    '<img src="images/icon-ring.png"/>' +
    'drau&szlig;en unbegrenzt,' +
    '<br>' +
    'drinnen bis zu 90 Personen' +
    '</p>' +
    '<p>' +
    '<img src="images/icon-glass.png"/>' +
     'max. 110 / min. 60 Personen</p>' +
    '<a href="#HEINEPARK" class="button" onclick="myFunction()">> Mehr Informationen</a>' +    
    '</div>' +
    '</div>'],

     ['<div class="info_content">' +
    '<img src="images/lutter-wegner-klein.jpg"/>' +
    '<div class="info_text">' +
    '<h2 class="firstHeading">Lutter & Wegner</h2>' +
    '<p>' +
    '<img src="images/icon-ring.png"/>' +
    'ca. 35 Personen sitzend,' +
    '<br>' +
    'bis zu 80 inkl. Stehpl&auml;tze' +
    '</p>' +
    '<p>' +
    '<img src="images/icon-glass.png"/>' +
     'max. 110 / min. 60 Personen</p>' +
    '<a href="#LUTTERWEGNER" class="button">> Mehr Informationen</a>' +    
    '</div>' +
    '</div>'],

我的Javascript看起来像这样:

function myFunction(e) {
$('.button').click(function() {  
        var anchor = $(this).attr("href");
        //alert(ab);
        $(anchor).show();
        return false;})  }

问题是您必须单击两次才能在第一个InfoWindow上运行。有谁能够帮我?

提前致谢 杰特

2 个答案:

答案 0 :(得分:0)

您的每个按钮都有一个onclick事件,按钮上有一个click事件处理程序。你不需要两者。

摆脱onclick事件,所以

'<a href="#HEINEPARK" class="button" onclick="myFunction()">> Mehr Informationen</a>'

变为

'<a href="#HEINEPARK" class="button">Mehr Informationen</a>'

只需设置一次点击事件处理程序,同时创建数组,即删除代码的myFunction部分,这样就可以了:

$('body').on('click', '.button', function() {  
    var anchor = $(this).attr("href");
    $(anchor).show();
    return false;
}); 

答案 1 :(得分:0)

好的,我只知道它是如何工作的。我将javascript更改为:

var int=setInterval('check()', 500);
function check()
{
   if (chkObject('.button')==true)
   { 
    $('.button').click(function() {  
        var anchor = $(this).attr("href");
        //alert(ab);
        $(anchor).show();
        return false;}) 
  }

}

function chkObject(elemId)
{
   return (document.getElementsByClassName('.button'))? true : false;
}

因此它在执行该功能之前检查是否存在.button。我确实拿出了a-tag中的onclick。谢谢!