我用网址URL(http:// ...)替换了网址'ajax_info.txt',该网址以某些文字回复。生成的代码适用于IE 8。
为什么代码不适用于Chrome(没有responseText)?
解决方案是什么(不使用任何库)?
感谢您的时间。
P.S:我是网络开发的新手。
答案 0 :(得分:2)
浏览器有一个称为“同源策略”的安全限制。它可以防止随机网站使用您通过cookie或localStorage存储在浏览器中的身份信息代表您提出请求。例如,如果w3schools.com可以向facebook.com发出AJAX请求,那么如果你在Facebook上有这些信息,它可以找出你住在哪里或你的朋友是谁。浏览器通过仅允许AJAX请求向文档源自的域,端口和协议(例如http或https)发出请求来阻止此类请求。
更多信息:
http://en.wikipedia.org/wiki/Same_origin_policy
这就是为什么您的请求在Chrome中不起作用,假设您将一些随机网站的URL替换为文本文件。我不确定为什么它会对IE 8有效。我怀疑它会。
答案 1 :(得分:0)
如果您是新手并希望避免大多数交叉javascripting问题,请转到jQquery
哪个轻量级,并且在没有涉及浏览器时问题较少
对于您当前的问题,您可以使用jQuery。Ajax()方法将解决您的问题
答案 2 :(得分:0)
使用JQuery将使您更容易管理代码,所以去吧。如果您真的不想使用库,请查看此www.w3.org/TR/XMLHttpRequeste
然后是您提供的链接中的代码。我能够在没有任何铬错误的情况下执行它。您的Chrome浏览器中的ajax请求是否没有遇到任何错误。尝试使用chrome developer tools,在这里您将看到服务器发送的响应状态。你也可以看看你的js代码是否有错误。
答案 3 :(得分:-1)
(function(c, I, B) {
c.fn.responsiveSlides = function(l) {
var a = c.extend({
auto: !0,
speed: 500,
timeout: 4E3,
pager: !1,
nav: !1,
random: !1,
pause: !1,
pauseControls: !0,
prevText: "Previous",
nextText: "Next",
maxwidth: "",
navContainer: "",
manualControls: "",
namespace: "rslides",
before: c.noop,
after: c.noop
}, l);
return this.each(function() {
B++;
var f = c(this),
s, r, t, m, p, q, n = 0,
e = f.children(),
C = e.size(),
h = parseFloat(a.speed),
D = parseFloat(a.timeout),
u = parseFloat(a.maxwidth),
g = a.namespace,
d = g + B,
E = g + "_nav " + d + "_nav",
v = g + "_here",
j = d + "_on",
w = d + "_s",
k = c(""),
x = {
"float": "left",
position: "relative",
opacity: 1,
zIndex: 2,
},
y = {
"float": "none",
position: "absolute",
opacity: 0,
zIndex: 1
},
F = function() {
var b = (document.body || document.documentElement).style,
a = "transition";
if ("string" === typeof b[a]) return !0;
s = ["Moz", "Webkit", "Khtml", "O", "ms"];
var a = a.charAt(0).toUpperCase() + a.substr(1),
c;
for (c = 0; c "+a+"
"});k.append(A);l.navContainer?c(a.navContainer).append(k):f.after(k)}a.manualControls&&(k=c(a.manualControls),k.addClass(g+"
_tabs "+d+"
_tabs "));(a.pager||a.manualControls)&&k.find("
li ").each(function(a){c(this).addClass(w+(a+1))});if(a.pager||a.manualControls)q= k.find("
a "),r=function(a){q.closest("
li ").removeClass(v).eq(a).addClass(v)};a.auto&&(t=function(){p=setInterval(function(){e.stop(!0,!0);var b=n+1" + a.prevText + "" + a.nextText + ""; l.navContainer ? c(a.navContainer).append(g) : f.after(g);
var d = c("." + d + "_nav"), G = d.filter(".prev"); d.bind("click", function(b) {
b.preventDefault();
b = c("." + j);
if (!b.queue("fx").length) {
var d = e.index(b);
b = d - 1;
d = d + 1u && f.css("width", u)
};
H();
c(I).bind("resize", function() {
H()
})
}
})
}
})(jQuery, this, 0);