OpenLayers - 更新类调用的初始化方法

时间:2012-03-21 18:29:33

标签: openlayers

我想在原始调用类

之后更新矢量图层类中的一个变量
OpenLayers.Layer.Observations = OpenLayers.Class(
  OpenLayers.Layer.Vector, {

其中一个选项是initialize方法:

initialize: function(name, displayStyle, options) {

看起来你不能只是覆盖初始化方法......

var lyrObs = new OpenLayers.Layer.Observations("Observations",...

lyrObs.initialize(...)

还有另一种更新初始化方法变量的方法吗?

2 个答案:

答案 0 :(得分:3)

看看来源!有很多例子。你需要的是这样的:

OpenLayers.Layer.Observations = OpenLayers.Class(OpenLayers.Layer.Vector, {
    initialize: function(…) {
        OpenLayers.Layer.Vector.prototype.initialize.apply(this, arguments);
        // Do what you want here
    }
});

答案 1 :(得分:1)

你尝试过这样做吗?

lyrObs.prototype.initialize = function...

此外,您可以覆盖任何图层属性,例如lyrObs.style = ...lyrObs.data = ...