当我在本地服务器上的直接 HTML 页面中运行 JavaScript 时,它工作得很好。但是,当我将它移到 .aspx 页面时,它不再显示。Firebug 没有显示脚本错误,我知道地图数据正在加载,因为它正确列出了页面上的属性。但是,地图本身不显示。通常在角落的缩放图标也不显示,该元素保持不变。它在 IE 中也不起作用。
这是初始化的代码,它在窗口加载时调用。
function init() {
var map = new OpenLayers.Map('map', {
allOverlays: true
});
countries = new OpenLayers.Layer.Vector("Countries", {
protocol: new OpenLayers.Protocol.HTTP({
url: "../../Content/simplify3.geojson",
format: new OpenLayers.Format.GeoJSON({
extractAttributes: true,
visibility: true
})
}),
strategies: [new OpenLayers.Strategy.Fixed()]
});
map.addLayer(countries);
select = new OpenLayers.Control.SelectFeature(countries,
{ multiple: true, toggle: true });
countries.events.on({
"featureselected": onFeatureSelect,
"featureunselected": onFeatureUnselect,
"loadend": populateList
});
map.addControl(select);
select.activate();
map.zoomToMaxExtent();
}
地图应该在这里:
<div id="map" style="width: 800px; height: 400px; border: 2px solid black;">There Should Be A Map Here!</div>
除了射这该死的东西还有什么想法吗?