开发者

Adding click event to KMLLayer Placemarks and Markers

开发者 https://www.devze.com 2023-03-07 01:33 出处:网络
How do i 开发者_StackOverflow中文版attach an onclick event to Placemarks specified in the KML file. Can event listeners be added to both google maps and google earth plugin?

How do i 开发者_StackOverflow中文版attach an onclick event to Placemarks specified in the KML file. Can event listeners be added to both google maps and google earth plugin? How would I go about this?


In the Google Earth plugin...

google.earth.fetchKml(ge, href, function(kmlObject) {});
google.earth.addEventListener(kmlObject, 'click', function(event) {
    event.preventDefault();
    var kmlPlacemark = event.getTarget();
    alert(kmlPlacemark.getName());
});

In Google Maps API

var ctaLayer = new google.maps.KmlLayer('http://www.****.com/index.kml');
ctaLayer.setMap(map);
google.maps.event.addListener(ctaLayer, 'click', function(kmlEvent) {
    var text = kmlEvent.featureData.description;
    alert(text);
});


Seemingly the onlick event is wrapped up when the kml loads (GMaps v3, kml with Placemarks) Any Placemark references to "BallonStyle" bundled in the same kml file causes these to replace the default popup - and you can achieve a lot with them.

These are the kml elements supported by Gmaps v3 http://code.google.com/apis/kml/documentation/kmlelementsinmaps.html

If your question is how to intercept that onlick event, then I am sorry I do not know how you can achieve that.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号