8

根据 W3C Validator,我的 HTML 几乎与 HTML5 兼容,只剩下一个错误:配置 Google Plus 按钮的 Javascript 代码。

无论我是否添加 CDATA,都会出现错误“元素的文本内容script不是所需的格式:预期的空格、制表符、换行符或斜杠,而是找到{了。” 显示此行:

<script src="http://apis.google.com/js/plusone.js" type="text/javascript">
   {"lang":"en","parsetags":"explicit"}
</script>
4

2 回答 2

3

错误信息是正确的。script具有其src属性集的标签只能包含文档:空格和注释(/* ... *///...)。

如果你只是想避免错误,你可以尝试script使用 js 创建标签,如异步加载示例中所示。这不会使其有效,但至少最初提供的 html 将没有错误,并且验证器不会抱怨。

于 2013-01-18T22:39:58.287 回答
2

...我非常怀疑你会在这里赢得验证战。

如果您有一个痴迷于验证的客户/老板(而不是可靠的代码——因为您完全可以拥有脆弱、易碎、有效的代码),那么您可以告诉他们完全放弃 g+。

但是谷歌正在使用该脚本标签来加载其文件,该文件正在查找最后加载的脚本标签,然后使用内部文本来配置程序。

它是完全有效的语法吗?不是真的,不。

也许他们可能会考虑尝试在 JS-comments 中工作,但实际上,Google 会经常改变这些东西,因为他们接管了世界并发展了 web 编程(angular.js 太疯狂了)。

虽然它们并不完美,但我怀疑它们的代码比“W3C 验证器批准”的代码更可靠。

于 2013-01-18T22:35:49.030 回答