嵌入式javascript中的特殊字符

phu*_*ehe 1 javascript validation xhtml

我有一些嵌入在html文件中的javascript,就像这样

<html>
    <head>
        <script>
            // and the script runs here
        </script>
    </head>
    <body></body>
</html>
Run Code Online (Sandbox Code Playgroud)

它有这样一条线

if((os == 'Mac')&&((br == 'Safari')||(br == 'Chrome')))
Run Code Online (Sandbox Code Playgroud)

一切顺利(这意味着脚本工作),但验证器是尖叫:

...字符"&"是分隔符的第一个字符,但是作为数据
出现......在以下几种情况下可能会出现此消息:
- 您试图在页面中包含"<"字符:您应该将其转义为"< "
- 你使用了未转义的&符号"&":这在某些情况下可能有效,但建议使用"&",这总是安全的.
- 另一种可能性是您忘记关闭之前标记中的引号.

替换所有&与&放置似乎很荒谬.我该如何摆脱这个错误?

Dan*_*llo 5

如果您使用的是XHTML,则需要将内联脚本包含在CDATA部分中:

<script type="text/javascript">
// <![CDATA[
    document.write("&");
// ]]>
</script>
Run Code Online (Sandbox Code Playgroud)

进一步阅读: