【问题标题】:Adding click event to KMLLayer Placemarks and Markers向 KMLLayer 地标和标记添加点击事件
【发布时间】:2011-05-20 10:51:29
【问题描述】:

如何将 onclick 事件附加到 KML 文件中指定的地标。可以将事件侦听器添加到谷歌地图和谷歌地球插件吗? 我该怎么办?

【问题讨论】:

    标签: events google-maps kml google-maps-markers google-earth-plugin


    【解决方案1】:

    在 Google 地球插件中...

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

    在 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);
    });
    

    【讨论】:

      【解决方案2】:

      似乎 onlick 事件在 kml 加载时结束(GMaps v3,kml with Placemarks) 任何对捆绑在同一个 kml 文件中的“BallonStyle”的 Placemark 引用都会导致这些替换默认弹出窗口 - 您可以通过他们。

      这些是 Gmaps v3 http://code.google.com/apis/kml/documentation/kmlelementsinmaps.html 支持的 kml 元素

      如果您的问题是如何拦截该 onlick 事件,那么很抱歉,我不知道您是如何实现的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多