首先,我以前从未遇到过这个问题,我对此感到困惑。我已经搜索过了,但是这个对象需要'错误指的是很多不同的东西。我只是在IE8中收到此错误,而不是在Chrome或Firefox中,但我没有尝试任何以前或更高版本的IE。
以下是我的代码的开头:
<html>
<head>
<title>Company Acronym List</title>
<script language="JavaScript" type="text/javascript">
var ACRONYM_CSV_LIST = '/acronyms/acronyms.csv';
var globalAcronymList = [];
console.log ('Initiating script');
function xmlGet ( url, callback ) {
console.log ('Inside the Get method');
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function () {
if ( xmlhttp.readyState==4 && xmlhttp.status==200 ) {
callback( xmlhttp.responseText );
}
}
xmlhttp.open("GET", url, true);
xmlhttp.send( );
}
function commit () {
console.log('Commit started');
var acronymSpan = document.getElementById('acronym-span');
acronymSpan.style.color = '#eee';
initLoadAcronymCsvList ();
}
function initLoadAcronymCsvList () {
console.log ('Starting the XML Get');
xmlGet( ACRONYM_CSV_LIST, acronymCsvListCallback );
}
我收到错误:预期对象&#39;消息在var xmlhttp = ...
行。事实上,IE8指向了&#39; v&#39;在var
关键字中作为错误。 为什么!?的
为了理智,我甚至添加了一些控制台跟踪。 commit()
函数放在<body onload="commit();">
标记中,因此当页面加载时,我会看到以下控制台跟踪:
Initiating script
Commit started
Starting the XML Get
Inside the Get method
然后热潮!只需使用var
关键字,我就会收到IE8错误。我试过改变变量的名字......什么都没有!
我检查了分号和所有内容,从上面的代码片段中,您应该能够看到从执行开始到失败的代码流。我甚至把脚本分成了自己独立的文件。我可以参考解决这个问题吗?
答案 0 :(得分:-1)
如果你试试这个怎么说?
if (typeof window.XMLHttpRequest === 'function')
alert ('ok');
else
alert ('not ok');
如果它说&#34;不好&#34;然后试试这段代码
if (typeof window.XMLHttpRequest === 'function')
var xmlhttp = new XMLHttpRequest();
else
var xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');