在我的项目中,我使用的是Prototype JavaScript Framework 1.7.1
当我在Windows 7上的IE10中加载网页时,我收到以下错误消息:
SCRIPT1010:在我的测试HTML页面中指向<!DOCTYPE html>
的预期标识符行1字符9:
<!DOCTYPE html>
<html>
<head>
<title>My webpage title</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="description" content="" />
<meta name="keywords" content="" />
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/prototype/1.7.1.0/prototype.js'></script>
</head>
<body>
just testing
</body>
</html>
HTTP请求标头
GET /test.html HTTP/1.1[CRLF]
Host: www.mydomain.com[CRLF]
Connection: close[CRLF]
User-Agent: Web-sniffer/1.0.44 (+http://web-sniffer.net/)[CRLF]
Accept-Encoding: gzip[CRLF]
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8[CRLF]
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6[CRLF]
Accept-Charset: ISO-8859-1,UTF-8;q=0.7,*;q=0.7[CRLF]
Cache-Control: no-cache[CRLF]
Referer: http://web-sniffer.net/[CRLF]
HTTP响应标头
Name Value Delim
Status: HTTP/1.1 200 OK
Server: webhost
Date: Tue, 26 Mar 2013 10:07:56 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: close
Vary: Accept-Encoding,User-Agent
Last-Modified: Tue, 26 Mar 2013 10:07:29 GMT
Cache-Control: max-age=3600, public, must-revalidate, proxy-revalidate
Expires: Tue, 26 Mar 2013 11:07:56 GMT
Pragma: public
CF-RAY: 553096521a6047f
Content-Encoding: gzip
是否有人知道导致此错误的原因或者这是Prototype 1.7.1中的错误?
答案 0 :(得分:11)
在Github https://github.com/sstephenson/prototype/pull/93
PrototypeJS每次加载时都会进行一些功能检测,并且Internet Explorer 10已经调整了解析某些Javascript语法的方式并抛出该错误。
PrototypeJS正在进行检测以了解如何将传递函数作为标记属性(如onclick方法)处理,并且IE10 javascript解析器将其检测为语法错误。
如果您查看Github中的pull请求,它将向您显示一个创可贴以及一个完整的修复程序,以使Internet Explorer 10满意。
请传播信息。
2013-05-17更新引用的拉取请求已关闭且修复已集成到PrototypeJS github的主分支
https://github.com/sstephenson/prototype
请从那里克隆并更新你的脚本。
2014-05-01更新此修复程序已在PrototypeJS 1.7.2中发布