编辑:根据我的研究,问题是文本被放在了textnode内,这阻止了它作为html处理。因此,到目前为止,所有答案都无效。
我正在从python脚本发送一些带有websocket的消息。由于我没有使用websockets和Javascript的经验,因此我仅举了一些示例代码并根据我的需要定制了消息。
发送消息很好,但是我需要在消息中包括换行符。我曾尝试在邮件中包含\ n和“
”,但它们只是打印到html页面。
.html看起来像这样:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="1" >
<title>Title</title>
</head>
<body>
<script>
var ws = new WebSocket("ws://127.0.0.1:5678/"),
messages = document.createElement('ul');
ws.onmessage = function (event) {
var messages = document.getElementsByTagName('ul')[0],
message = document.createElement('li'),
content = document.createTextNode(event.data);
message.appendChild(content);
messages.appendChild(message);
};
document.body.appendChild(messages);
</script>
</body>
</html>
答案 0 :(得分:0)
尝试用<br>
替换\ n,请记住您使用的是HTML
message = message.replace(/\n/g, "<br>");
答案 1 :(得分:0)
您可以尝试添加CSS空格属性
document.body.style = "white-space: pre;"
从文档中:
pre => Whitespace is preserved by the browser. Text will only wrap on line breaks. Acts like the <pre> tag in HTML
答案 2 :(得分:-2)
您是否将'\ n'用引号引起来?没有引号就无法工作