【发布时间】:2014-01-27 12:19:57
【问题描述】:
如何更改谷歌地球中地标气球的样式?不是kml数据,是气球本身。例如,我想环绕边界。我做了一个例子,但总是在我放置的样式周围看到一个空白边框。
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
【问题讨论】:
-
你能创建一个 JSFiddle 吗?
-
是的,link
-
是否必须使用 Google 地球?这需要一个浏览器插件,并且在 Linux 上根本不支持。对于大多数目的(你自己的)来说,Google Maps API 可能是更好的选择,并且易于定制。
-
我也使用了谷歌地图,但我需要在谷歌地球中进行。无论如何,谢谢。
标签: javascript google-earth google-earth-plugin balloon