[英]W3 validate html error with 1 line of javascript code
我在validator.W3.org中收到以下错误
第70行,第26列:字符“ <”是定界符的第一个字符,但作为数据出现
if (remainingSeconds < 10) {
第70行,第26列:StartTag:无效的元素名称
if (remainingSeconds < 10) {
这是我使用的代码。
<script type="text/javascript">
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
remainingSeconds = "0" + remainingSeconds;
}
</script>
如果删除<或将<更改为a =,则错误消失了。
有人有主意吗?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
您正在验证XHTML文档,因此必须在脚本内容周围使用CDATA标记 。
<script>
<![CDATA[
// JavaScript goes here
]]>
</script>
就我个人而言,我不知道为什么您会在当今时代使用XHTML,但无论如何。
如果您要验证为XHTML,请尝试将JavaScript包装在<![CDATA[]]>
块中:
您使用的是严格的XHTML,因此,如果要将XML语法中的所有字符用作文本,则必须正确地对其进行转义。 在XHTML中,通常的做法是使用CDATA块,该块以与HTML兼容的方式进行了转义:
<script type="text/javascript">//<![CDATA[
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
remainingSeconds = "0" + remainingSeconds;
}
//]]></script>
但是,有两个更好的修复程序:
<!DOCTYPE html>
),而不是XHTML <script type="text/javascript" src="second-passed.js"></script>
两者都是更好的做法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.