gpt4 book ai didi

javascript - IE8 获取对象预期错误 - 发生在声明 XMLHttpRequest 对象的 var 关键字上

转载 作者:行者123 更新时间:2023-11-28 10:54:56 25 4
gpt4 key购买 nike

首先,我以前从未遇到过这个问题,对此我感到困惑。我已经搜索过,但是这个“预期对象”错误指的是很多不同的事情。我只在 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 );
}

我在 var xmlhttp = ... 处收到“错误:需要对象”消息线。事实上,IE8 直接指向 var 中的“v”。关键字作为错误。 为什么!?

为了理智起见,我什至添加了一些控制台跟踪。 commit()函数放置在 <body onload="commit();">标记,因此当页面加载时,我会看到以下控制台跟踪:

Initiating script
Commit started
Starting the XML Get
Inside the Get method

然后繁荣!只需使用 var关键字 我收到 IE8 错误。我也尝试更改变量的名称...但什么也没有!

我检查了分号和所有内容,从上面的代码片段中,您应该能够看到从执行开始到失败的代码流程。我什至将脚本分成了自己的单独文件。有一个已知问题我可以引用来解决这个问题吗?

最佳答案

如果你尝试这个,它会说什么?

if (typeof window.XMLHttpRequest === 'function') 
alert ('ok');
else
alert ('not ok');

如果它说“不行”,那么尝试这个代码

if (typeof window.XMLHttpRequest === 'function') 
var xmlhttp = new XMLHttpRequest();
else
var xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');

关于javascript - IE8 获取对象预期错误 - 发生在声明 XMLHttpRequest 对象的 var 关键字上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25164768/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com