【发布时间】:2015-02-20 17:45:59
【问题描述】:
IE 一直抛出“对方法或属性访问的意外调用”,原因不明。
通过控制台调试我发现它恰好在它到达 XDomainRequest.onload 方法之后发生,我不知道是什么原因造成的,代码如下:
var Xdr = new XDomainRequest(),
_url = someurl;
Xdr.open("get", _url);
Xdr.onload = function () {
var x = Xdr.responseText;
};
Xdr.onprogress = function(){ };
Xdr.ontimeout = function(){ };
Xdr.onerror = function () { };
setTimeout(function(){
Xdr.send();
}, 0);
有什么见解吗?简直太奇怪了。
【问题讨论】:
-
你的控制台是打开的吧?您是否在控制台或服务器上看到任何请求?这个错误到底发生在哪一行?
-
控制台打开时页面加载完美(即调试错误),否则除了等待响应之外什么都不做。错误发生在 Xdr.onload 函数的确切第一行
-
那是你的问题。 console.log 仅在控制台打开时才有效。欢迎使用 IE 调试!
-
啊抱歉,我还没有说清楚......我把控制台只是为了举例,不管我有什么,它都会抛出“意外调用方法或属性访问",原来只有一个"var x = xdr.responseText",我来编辑一下代码。
-
如果它发生在该行,删除它会消除错误吗?属性分配上发生的错误似乎很奇怪..想知道您是否可能误解了某些内容。
标签: javascript internet-explorer internet-explorer-8 xdomainrequest