【问题标题】:Openlayers: Marker on different vector layersOpenlayers:不同矢量图层上的标记
【发布时间】:2011-10-18 14:47:05
【问题描述】:

我有一个带有两个矢量图层的 OpenLayers 地图。它们都包含标记。

在以下链接的帮助下,我设法在两个层上都获得了一个选择处理程序。 http://openlayers.org/dev/examples/select-feature-multilayer.html

此选择处理程序为两个图层上的标记触发相同的功能。 但是我怎么能不同,选择的图层位于哪一层?

【问题讨论】:

    标签: javascript vector openlayers marker


    【解决方案1】:

    在 OpenLayers 中,处理程序事件在单个视口或地图画布上触发。因此,您应该在每个图层上附加事件(特征选择和特征取消选择)。如果您按照示例页面中的代码进行操作,那么他们使用的很清楚相同的事件,但您可以在不同的地方更改自己的代码。

    vectors1.events.on({
                "featureselected": function(e) {
                    showStatus("selected feature "+e.feature.id+" on Vector Layer 1");
                },
                "featureunselected": function(e) {
                    showStatus("unselected feature "+e.feature.id+" on Vector Layer 1");
                }
            });
    

    对于vectors2,附加了相同的事件。如果您正在寻找功能放置在哪一层,如上面的代码所示。

    【讨论】:

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