我正在构建一个网站,该页面使用Jquery .load()函数加载导航栏和其他一些资源(如下面的代码所示)。
<script>
$(function () {
$("#navbar-placeholder").load("subpage_navbar.html");
});
</script>
在safari 5中在我的计算机上本地查看.html文件时一切正常,并且它曾经在safari 11中正常工作,但现在当我尝试打开文件时出现错误:
XMLHttpRequest无法加载file:/// ...预检响应不成功
我是否需要在safari中更改任何首选项才能使其像以前一样工作?
答案 0 :(得分:2)
XMLHttpRequest仅与http,data,chrome,chrome-extension,https一起使用文件协议。
您需要托管您的文件或使用类似此链接的内容来实现此目的。
Allow Google Chrome to use XMLHttpRequest to load a URL from a local file
在Safari 11中,文件协议访问受限。
[来自file://的CORS和跨域访问现在已被阻止,除非从“开发”菜单中选择了“禁用本地文件限制”。]