添加谷歌地图infoBubble内的手风琴(从谷歌地图工具库)

问题描述:

我试图添加一个谷歌内部的一个jQuery的手风琴(http://jqueryui.com/demos/accordion/)映射infoBubble添加谷歌地图infoBubble内的手风琴(从谷歌地图工具库)

我第一添加类似于

的标记
<div id="accordion"> 
    <h3><a href="#">First header</a></h3> 
    <div>First content</div> 
    <h3><a href="#">Second header</a></h3> 
    <div>Second content</div> 
</div> 

到infoBubble。但我无法将任何事件附加到上述标记上。

当我尝试调用$(“#accordion”).accordion();在domready事件里面类似于

google.maps.event.addListener(infoBubble, 'domready', function() { 
    $("#accordion").accordion(); 
}); 

它似乎没有附加事件。

我不确定我的代码有什么问题。有人可以帮助我这个。

您的代码不起作用,因为它在信息存在的手风琴之前正在运行。您需要放置该代码,以便在设置infowindow的内容后调用该代码。它不仅需要在打开后运行,而且还需要在打开后运行几百毫秒。 (您必须在所有浏览器中进行测试才能找到合适的数量 - 我随意选择了500毫秒,并且工作正常)。查看Infobubble代码后,我很失望地发现,除非错过了某些内容,否则不会发生火灾当打开完成时。

不过,我能得到它的工作由您链接到并在标记的点击回调下面的例子将线122这个代码(infobubble打开后):

setTimeout(function() { 
     $("#accordion").accordion(); 
    }, 500); 

这不是一个最佳解决方案,但至少可以证明问题并希望能够找到正确的解决方案。

+1

非常感谢。添加内容时,我修改了infobubble代码以触发domready事件。 – Sivakumar

+0

嗨!您可以发布在infobubble.js中所做的更改吗?谢谢! –