0

一段时间以来一直在关注这个网站上的帖子,发现它们非常有帮助。这是我的第一篇文章,所以请多多包涵。

我正在使用 ajax 加载 XML 文件(加载后我正在使用 jquery 处理信息)。它包含我用来构建缩略图、图片库和幻灯片的信息。但是 xml 文件似乎没有在 firefox 中加载。IE 和 Safari 这样做没有问题,所以我有点卡住了。我还没有测试过 chrome 或 opera,因为它们不允许本地 xml。

问题是,问题只是发生了,因为我更改了 xml 文件的位置。它曾经与我放置 ajax 命令的 javascript 文件位于同一文件夹中。所以以下在 IE SafariFirefox 中运行良好:

$.ajax({
    type: 'GET',
    url: 'projects.xml',
    dataType: 'xml',
    success: parseXML
});

现在 xml 位于一个单独的文件夹中,Firefox 仅在我通过链接导航到 html 文件时才加载它(通过地址栏导航到 html 文件或刷新导致 firefox 不加载 xml)。所以我怀疑 Firefox 的“../”表达式有问题。这是真的?这仅仅是离线工作的问题吗?这是我现在使用的代码:

$.ajax({
    type: 'GET',
    url: '../xml/projects.xml',
    dataType: 'xml',
    success: parseXML
}); 

任何帮助将不胜感激。

4

1 回答 1

1

在使用 file:// URI 时,Firefox 将树上更高的目录中的文件视为不同源。这是为了防止本地 HTML 文件从您的硬盘读取任意数据。

所以是的,这是由于您使用了 .. 并且只有当您使用 file:// URI 时才会出现问题。

于 2012-05-09T01:43:53.367 回答