我的轮子上有辐条,我不知道如何解决这个问题。我已经为此苦苦挣扎了几天,它不像普通的信息框,因为它没有设置为标记而是多边形,这对我来说是新事物。我有显示来自 XML 文件的数据的多边形,它们显示得很好。我已经在网上搜索并让它将鼠标悬停设置为您将鼠标悬停在多边形上的位置,不透明度会发生变化,并且会弹出一个信息框。问题是信息框在弹出时显示“未定义”而不是我在其中设置的 html 以显示来自 XML 文件的数据。
例如,这里是测试地图的链接。
http://www.mesquiteweather.net/googlemap_poly.html
这是 XML 文件的链接,我只是想在信息框中显示元素事件和过期。
http://www.mesquiteweather.net/xml/warnings_test.xml
这是我用来创建信息框和鼠标悬停事件的代码
function attachPolygonInfoWindow(polygon, html, event, expires)
{
var html = "<strong>" + event + "</strong>";
eventWarnings.infoWindow = new google.maps.InfoWindow({content: html});
google.maps.event.addListener(eventWarnings, 'mouseover', function(e) {
var latLng = e.latLng;
this.setOptions({fillOpacity:80});
polygon.infoWindow.setPosition(latLng);
polygon.infoWindow.open(map);
});
google.maps.event.addListener(eventWarnings, 'mouseout', function() {
this.setOptions({fillOpacity:0.35});
polygon.infoWindow.close();
});
}
var polygon = new google.maps.Polygon(/* omitted for brevity */);
attachPolygonInfoWindow(eventWarnings);
eventWarnings.setMap(map);
}
});
我很确定这很容易被我忽略,但我找不到任何与我的问题有关的东西。我很幸运我得到了显示信息框,因为我了解到这很棘手,因为多边形没有真正的中心,而且它们没有像你用我可以处理的标记那样设置。
如果有人有任何建议,请告诉我。
-谢谢