如何改变Google Earth中的placemark ballon的样式?不是KML数据,而是Ballon本身。例如,我想围绕边界。我做一个例子,但总是在我放置的样式周围查看空白边框。
JavaScript代码:
var ge=null;
var html="<div class='ews_infobox'> Prueba </div>";
var inicio={"latitud": 43.3667, "longitud": -5.8333,"zoom": 5000.0};
function initCB(pluginInstance) {
ge = pluginInstance;
ge.getWindow().setVisibility(true);
ge.getNavigationControl().setVisibility(ge.VISIBILITY_SHOW);
//Crea un placemark.
var placemark = ge.createPlacemark('');
//Define icono.
var icon = ge.createIcon('');
icon.setHref('images/home2.png');
// Placemark en Oviedo.
var point = ge.createPoint('');
point.setLatitude(43.3667);
point.setLongitude(-5.8333);
placemark.setGeometry(point);
// Add the placemark to Earth.
ge.getFeatures().appendChild(placemark);
//Crea la vista (LookAct).
ge.getOptions().setFlyToSpeed(.2);
var lookAt = ge.createLookAt('');
// Pone las posiciones.
lookAt.setLatitude(inicio.latitud);
lookAt.setLongitude(inicio.longitud);
lookAt.setRange(inicio.zoom);
// Actualiza vista de google Earth.
ge.getView().setAbstractView(lookAt);
eventoMarca(placemark);
}
function eventoMarca(placemark){
google.earth.addEventListener(placemark, 'click', function(event) {
var balloon = ge.createHtmlDivBalloon('');
balloon.setFeature(placemark);
var div = document.createElement('DIV');
div.innerHTML = html;
balloon.setContentDiv(div);
ge.setBalloon(balloon);
});
}
样式CSS:
.ews_infobox
{
padding:15px;
color:#000;
background:#f3961c;
background:-webkit-gradient(linear, 0 0, 0 100%, from(#f9d835), to(#f3961c));
background:-moz-linear-gradient(#f9d835, #f3961c);
background:-o-linear-gradient(#f9d835, #f3961c);
background:linear-gradient(#f9d835, #f3961c);
-webkit-border-radius:10px;
-moz-border-radius:10px;
border-radius:10px;
width: 80px;
height: 40px;
}
和ballon是:ballon
afaik根本无法做到这一点。您只能更改内容的样式,而不能更改气球本身。
这是因为"气球框架"实际上不是DOM的一部分 - 它是由插件本地渲染的。