按钮事件InfoWindow谷歌地图APi

Button Event InfoWindow Google Map APi

本文关键字:APi 谷歌地图 InfoWindow 事件 按钮      更新时间:2023-09-26

我有一个带有自定义InfoWindows的谷歌地图。Alle InfoWindows有一个按钮,它有一个锚链接。每个按钮应该打开一个覆盖onclick。

我的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;})  }

问题是你必须点击两次,它只适用于第一个信息窗口。有人能帮帮我吗?

提前感谢Jette

好吧,我刚刚弄明白它是怎么工作的。我把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标签中的onclick。谢谢你!

您在每个按钮上都有一个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;
});