根据documentation中的示例,它们将InfoBox与pixelOffset居中:


  “ pixelOffset设置为(-140,0),以便InfoBox居中
  适当地。”


pixelOffset: new google.maps.Size(-140, 0)


问题是,我的InfoBox始终通过setContent()更改内容,因此始终更改宽度。

如何将InfoBox置于标记上方?

最佳答案

boxStyle宽度为280px。

boxStyle: {
          background: "url('tipbox.gif') no-repeat"
          ,opacity: 0.75
          ,width: "280px"
         }


140px是其中的一半。如果InfoBox的大小是动态的,则必须将其渲染到某个地方(它将继承正确的CSS),等待直到渲染完毕,检索大小,然后将pixelOffset设置为其宽度的一半。

关于javascript - 您如何居中Google Maps InfoBox,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44038275/

10-13 01:09