javascript - OpenLayers => 特征为空

标签 javascript jquery json openlayers geojson

这是我的 GeoJSON 结果。 PasteBin 但是当我加载它时,我在 firebug 中得到的结果是 feature is null。为什么会这样,我的结果有没有错误? JSON 中的坐标是用 WGS84 投影写的,在代码中我也将 externalProjection 设置为 WGS84。那么为什么我会得到返回“feature is null”呢? 我用来管理 map 的代码是:

$(document).ready(function() {
var wgs84 = new OpenLayers.Projection('EPSG:4326');
var layer = null;
var map = new OpenLayers.Map('map',{projection: wgs84});
  layer = new OpenLayers.Layer.OSM( "Simple OSM Map");
    var baseProjection = layer.projection; 
  map.addLayer(layer);
  map.setCenter(new OpenLayers.LonLat(10,10), 4);
  map.events.register("moveend", null, function(){

      if(map.zoom == 10)
      {
        var bounds = map.getExtent();
        console.log(bounds);
        var ne = new OpenLayers.LonLat(bounds.right,bounds.top).transform(map.getProjectionObject(),wgs84);
        var sw = new OpenLayers.LonLat(bounds.left,bounds.bottom).transform(map.getProjectionObject(),wgs84);
        var vectorLayer = new OpenLayers.Layer.Vector();
        map.addLayer(vectorLayer);
        $.getJSON('ajax.php?a=markers&type=json&sw=('+sw.lon+','+sw.lat+')&ne=('+ne.lon+','+ne.lat+')',function(data){
        //$.getJSON('test.json',function(data){
            var geojson_format = new OpenLayers.Format.GeoJSON({
                'externalProjection': wgs84,
                'internalProjection': baseProjection
                });
            vectorLayer.addFeatures(geojson_format.read(data));
        });
        }
    });
});

最佳答案

您的示例 OpenLayer 代码工作正常,问题出在您的 GeoJSON 中:您将 coordinates 拼错为 "coordninates"

关于javascript - OpenLayers => 特征为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7702641/

相关文章:

JavaScript 仅适用于 Chrome

javascript - 将图像标题区域与图像对齐

jquery - 如何在 '.append()'循环内同步 'for'和ajax查询

javascript - Node js 中 Json 长度始终未定义

javascript - 动态生成的表显示错误

JavaScript Canvas 代码不起作用

javascript - 从jquery中的td获取总数

javascript - 有什么方法可以将图像与选择列表一起使用?

c# - 反序列化对象的JSON数组,但是当数组包含1个对象时,数组被省略

javascript - 为什么我的模块函数在 Node.js 中返回未定义?