我正在使用 jquery 2.0,但还想使用 jQuery 迁移插件,这样我的网站就可以在旧版浏览器上运行。但是,我没有成功地让它工作。我的 html 的标题部分中有以下内容。
<head>
<meta http-equiv="X-UA-Compatible" content="IE=8" />
<script src="/Scripts/jquery-2.0.3.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script src="/Scripts/jquery.validate.min.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
</head>
兼容性元标记是为了让我可以在我的计算机(具有 IE 11)上进行测试。我没有装有旧版 IE 的电脑。无论如何,这给了我 javascript 错误,例如:
0x800a01b6 - JavaScript 运行时错误:对象不支持属性或方法“addEventListener”
jQuery 迁移指南(https://github.com/jquery/jquery-migrate/)似乎只是说在包含 jQuery 之后包含迁移插件。我究竟做错了什么?
编辑
我发现我的本地 jquery.js 文件必须已损坏,或者我从中获取的 nuget 包的版本可能不正确。因为当我直接从 code.jquery.com 包含 jquery 时,该错误就消失了。
<head>
<meta http-equiv="X-UA-Compatible" content="IE=8" />
<script src="http://code.jquery.com/jquery-2.1.0.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
</head>
但是,我的脚本出错了。这是一个示例脚本
function HighlightSelectedRow(tr) {
$("#TableSummary tr").removeClass("HighlightedRow");
tr.className += " HighlightedRow";
}
它给出了以下错误
0x800a138f - JavaScript runtime error: The value of the property '$' is null or undefined, not a Function object
谢谢