今天项目兼容ie9 ,项目在i10以上的版本都正常运行,在i9却完全接收不到数据,报错一直是DOM7011 等,在网上找了各种解决方案,都未生效,甚至卸载了浏览器。
后来同事找到一个暂时的解决方案,在js文件最前加上一句jQuery.support.cors = true;(这一句是设置可以跨域)
然后设置浏览器的信任站点,浏览器暂时可以访问数据,据她形容 ,这是ajax产生的跨域问题。
这个项目里的ajax并没有发送请求的时候也并没有用jsonp,所以现在还未知是否这些问题加上jsonp就可以解决。等到之后实验了补充,毕竟这个问题只能暂时解决,先用来调调样式。
之前做的项目都没有兼容ie 这次一做 ,打的我措手不及 很疑惑 为什么ie9以下就会产生跨域, 据同事说是因为同源策略,不同了浏览器的同源策略不同,前后端分离的情况下,我的域名和后台的ip地址不同,所以就可能产生跨域问题。这个问题前台后台都可以解决。
实在是才疏学浅,短短记录一下,等找到真正的解决方案再更。