我正在使用 OpenLayers 开发一个项目。而且我只在 IE 上收到“访问被拒绝”错误。我知道有一些(也许)更容易的问题的解决方案:
SCRIPT5:在 IE9 上的 xmlhttprequest
访问被拒绝访问 IE 上的 jQuery 脚本被拒绝访问
但我的限制是我不能修改我正在使用的任何库。但由于这是一个常见问题,也许 OpenLayers 已经准备好一些解决方案,我只是找不到正确的语法来使用它。
var sundials = new OpenLayers.Layer.Vector("KML", {
projection: map.displayProjection,
strategies: [new OpenLayers.Strategy.Fixed()],
protocol: new OpenLayers.Protocol.HTTP({
url: "london_shapes.kml",
format: new OpenLayers.Format.KML({
extractStyles: true,
extractAttributes: true
})
})
});
map.addLayers([wms]);
map.addLayers([sundials]);//if you comment this, the error disappears
//so it is obvious that the script cannot load london_shapes.kml under IE.
http://jsfiddle.net/dt1510/huepP/5/
问题:有没有解决 IE 问题的 OpenLayers 标准方法?
编辑:
这是我的问题的一个更简单的演示:
以下网页适用于 IE 和 Firefox:http
://www.openlayers.org/dev/examples/kml-layer.html
但是,如果我下载它,它只适用在 Firefox、IE7 中而不是在 IE8/IE9 中。我需要网页在客户端计算机上而不是在线时工作。