【问题标题】:OpenLayers eventListener attributeOpenLayers eventListener 属性
【发布时间】:2014-02-10 00:41:39
【问题描述】:

我在 OpenLayers 的示例中找到了这段代码,用于在 OpenLayers.Control.SelectFeature 上注册一个监听器

var report = function(e) {
     OpenLayers.Console.log(e.type, e.feature.id);
};

var highlightCtrl = new OpenLayers.Control.SelectFeature(vectors, {
    hover: true,
    highlightOnly: true,
    renderIntent: "temporary",
    eventListeners: {
            beforefeaturehighlighted: report,
            featurehighlighted: report,
            featureunhighlighted: report
    }
});

现在我想知道 e 到底是什么。 e是什么类型,除了类型和特征,e还有什么其他属性?我在哪里可以找到这方面的文档?

【问题讨论】:

    标签: javascript events openlayers gis


    【解决方案1】:

    使用IE调试可以找到e的其他属性

    【讨论】:

    • 想详细说明“使用 IE 调试”是什么意思?这太模糊了,无法回答。
    • 在“report”函数的开头,添加“debugger”,然后使用“F12”键进行调试,在局部变量选项卡中,可以找到变量“e”
    【解决方案2】:

    在您的示例中,“报告”方法称为“回调方法”,当事件发生时会触发该方法。如果您查看 SelectFeature 控件highlight method,您会看到“beforefeaturehighlighted”首先被触发。看一下方法的参数:

    var cont = this.events.triggerEvent("beforefeaturehighlighted", {
        feature : feature
    });
    

    第一个是事件的名称,第二个是要发送到回调方法的参数。因此,如果您按照 Begisen 的建议检查您的“e”变量,您将看到 e.feature 可用。

    这就是你的 e 变量。

    【讨论】:

      猜你喜欢
      • 2022-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      相关资源
      最近更新 更多