我正在使用 Twitter 的 Bootstrap,并希望在popover中显示 Google Map 。
它现在的工作方式我正在做这样的事情
$ ->
$('.thumbnails a.js-popover').popover
html: true,
content: ->
uid = $(this).data('profileUid')
popover_container = $('.popover-contents:data(profileUid=' + uid + ')')
_.each window.Maps, (map) ->
google.maps.event.trigger map, 'resize' // I hoped this would re-draw the map
popover_container.html()
弹出框从隐藏的 div 加载它的内容.popover-contents
,并连接到a
with data 属性(这样我就可以找到正确的弹出框来显示)
该地图在不在弹出窗口中时可以完美运行,我认为它与通过html()
jQuery 复制到另一个 DOM 元素有关。Twitter 的引导程序不提供modal opened
回调,我真的不确定如何使地图工作。
正如您可以看到地图在完整的个人资料页面上正常工作,标记是相同的(rails 部分),并且 javascript 也是共享的 - 我只能假设 GoogleMaps API 真的不喜欢它的dom搞砸了,并因此引起问题。