文件读取ajax调用浏览器兼容性

时间:2013-03-01 12:32:07

标签: jquery html ajax cross-browser

我正在尝试在给定代码下面运行。它在 IE浏览器中正常工作,但在其他浏览器中它无效。

<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.4 /jquery.min.js'></script>

<script type="text/javascript">
$(document).ready(function(){
 $("#button1").click(function(){

    alert("1");     
        $.ajax({url:"file://///30.170.12.75/Shared/a.html"
        ,success:function(result) {$("#div1").html(result);}
        ,error: function(result) {alert("2");}
         });
  });
});
<script>

据我所知,jquery api也为我们提供了浏览器兼容性,但它不能用于任何其他浏览器。

请让我知道原因,以便将来我会照顾他们。

1 个答案:

答案 0 :(得分:2)

您正在使用file://协议,如果源文档不是具有file://协议的服务器,则大多数浏览器都不允许访问此协议。

对于ajax请求,如果目标协议是file://协议,大多数浏览器都会阻止请求。但是,IE似乎没有这样的行为,仍然允许请求完成。

如果您使用的是Chrome,则可以通过使用--allow-file-access-from-files标记启动Chrome来更改此设置。

(它真的是file://而不是http://或其他东西吗?)