Google地球插件未显示kml的地标描述

时间:2013-10-08 16:47:49

标签: kml google-earth-plugin

我似乎遇到了点击时没有显示地标描述的问题。气球打开,按照大小看起来文本可能实际上在那里,但它没有显示。页面是相当动态的,有多个kml的加载,所以我想知道是否在某处我杀死了代码中的地标?它们在地球应用程序中显示得很好,所以我假设它是插件或我加载kml的方式。

以下是一个示例:http://tour.frederickwildman.com/jaboulet任何有关如何继续的帮助或建议都会非常有帮助。感谢

1 个答案:

答案 0 :(得分:0)

很难确定,因为我只能间歇性地重现问题,但我认为有两个可能的问题。

首先,你的气球让他们content scrubbed成为地球api。您可以通过查看打开的气球的标记来确认这一点。您将看到以下内容已删除的内容。

<!--
Content-type: mhtml-die-die-die

-->

其次,由于内容的原因,气球似乎出现了调整大小的问题。

要克服这些问题,您可以选择自己处理气球事件。然后,您可以调用getBalloonHtmlUnsafe()进行气球内容清理和 调整大小setMaxWidth()setMaxHeight()。 e.g。

google.earth.addEventListener(ge.getGlobe(), 'click', function(event) {
  // exit if not a placemark
  if(event.getTarget().getType() != 'kmlPlacemark') return; 

  // cancel the default behaviour 
  event.preventDefault(); 

  // get the un-scrubbed content and show the max-sized balloon
  var content = placemark.getBalloonHtmlUnsafe(),
      balloon = ge.createHtmlStringBalloon('');
  balloon.setFeature(event.getTarget());
  balloon.setContentString(content);
  balloon.setMaxWidth(800);
  balloon.setMaxHeight(600);
  ge.setBalloon(balloon);
});