javascript - OpenLayers.Filter.Function 未按预期工作。事实上,根本没有工作

标签 javascript geocoding openlayers

我正在尝试使用函数过滤器设置规则。 但它不起作用:该层上的线条只是黑色。 更重要的是,我提供的用于过滤功能的函数从未被调用。

有人可以指出我犯了什么错误吗?

这是代码。

感谢您的宝贵时间和关心。

var my_filter = new OpenLayers.Filter.Function(
    function(attributes) {
       console.log(attributes);
       var x=0; 
       return true; 
});

var ruleLow = new OpenLayers.Rule({
    filter:my_filter ,
  symbolizer: {pointRadius: 10, fillColor: "green",
               fillOpacity: 0.5, strokeColor: "green"}
});


var my_style=new OpenLayers.Style( null,ruleLow);

var my_style_map=new OpenLayers.StyleMap({
    "temporary":my_style,
    "default":my_style,
    "select":my_style
});

this.vectors= new OpenLayers.Layer.Vector(
    "Vector Layer",
    {
        styleMap:my_style_map,
        renderers:this.renderer,
    }
);

最佳答案

我很高兴与您分享如何使用 OpenLayers.Filter.Function! (所以我解决了我遇到的问题): 这就是我必须基本上改变的。

无论如何,谢谢。

var my_filter = new OpenLayers.Filter.FeatureId({
    **type: OpenLayers.Filter.Function,**
    evaluate:function(attributes) {
       console.log(attributes);
       var x=0; 
       return true;

    }
});
var ruleLow = new OpenLayers.Rule({
    filter:my_filter,
  });


var my_style=new OpenLayers.Style( {pointRadius: 7, fillColor: "#FF3300",
               fillOpacity: 0.5, strokeColor: "#FF3300"},**{rules:[ruleLow]}**);

var my_style_map=new OpenLayers.StyleMap({
    "temporary":my_style,
    "default":my_style,
    "select":my_style

});
this.vectors= new OpenLayers.Layer.Vector(
    "Vector Layer",
    {
        styleMap: my_style_map, 
        renderers:this.renderer,
    }
);

关于javascript - OpenLayers.Filter.Function 未按预期工作。事实上,根本没有工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11616658/

相关文章:

javascript - 存储动态创建的控件的值

JavaScript:如何加入/组合两个数组以连接成一个数组?

javascript - 如何在 Chrome 扩展中使用 window.print() ?

php - 解析位置字符串

zooming - OpenLayer Map 限制平移和缩放

typescript - Openlayers:LineString 上的渐变发光

javascript - onclick 监听器仅按特定顺序工作?

python - 给定经纬度和距离,我想找到一个边界框

java - 地理编码,获取角点纬度经度

javascript - 如何根据互联网连接可用性切换基础层