为什么这个Javascript代码的行为是这样的?
我不知道为什么上面的代码不起作用。浏览器窗口只会继续加载,而不会显示任何内容。我甚至不能在谷歌浏览器中使用F12来调试代码。我不确定,但我认为问题在于标签。看起来很好,但不是很好。注意空格。难道这四个都不能正常工作吗?不知道为什么,但是代码开始工作了。我非常非常肯定,它一开始不起作用。奇怪 此外,当使用或被使用时,打印文本是et voilÃ!而不是等着瞧! 有什么想法吗?当JavaScript位于HTML中的标记内而不是外部文件时,尝试转义/with\为什么这个Javascript代码的行为是这样的?,javascript,Javascript,我不知道为什么上面的代码不起作用。浏览器窗口只会继续加载,而不会显示任何内容。我甚至不能在谷歌浏览器中使用F12来调试代码。我不确定,但我认为问题在于标签。看起来很好,但不是很好。注意空格。难道这四个都不能正常工作吗?不知道为什么,但是代码开始工作了。我非常非常肯定,它一开始不起作用。奇怪 此外,当使用或被使用时,打印文本是et voilÃ!而不是等着瞧! 有什么想法吗?当JavaScript位于HTML中的标记内而不是外部文件时,尝试转义/with\ <!DOCTYPE html>
<!DOCTYPE html>
<html>
<body>
<script type="text/javascript">
<!--
var x = 26;
do{
document.write(x + " et voilà! <br />");
x++;
}while(x<32);
//-->
</script>
</body>
</html>
但我在Chrome上看不到任何问题
至于Unicode字符,您应该将文件编码为UTF-8并添加到文档的头部
document.write(x + " et voilà! <br \/>");
Ã而不是a是UTF-8的问题 HTML解决方案: 设置元字符集,并使用UTF-8编码保存文件:
<html><head><meta charset="utf-8" /></head>
使用UTF-8编码保存文件:
...
html/xml注释和javascript注释//位于同一行。还有字符串html解析器中的/>结束标记不理解或看不到javascript,它只看到/>-因此一个坏的解析器可能会混淆 除去// 将字符串拆分为document.writex+et-voilá!br++>;
不管怎样,您的原始代码在我的Chrome上运行。。这很有效,但很可怕,不要那样做。另外,不要将javascript放在HTML注释中。对,但是将它们与只能为空的元素一起使用没有坏处,例如,如果您想要polyglot X/HTML5。@user2357112为什么不在HTML注释中插入javascript?有人告诉我这是一个很好的做法。使无法理解Javascript的浏览器忽略它们。@Mosho什么是可怕的?谢谢,更正。虽然我的答案主要是编码,明白了。现在我读了你的答案,我觉得自己很傻。我应该考虑一下编码。在Linux中工作。
<meta charset="UTF-8">
AddDefaultCharset utf-8