此代码来自Javascript: console.log to html,我正在试图弄清楚如何让新消息排在最前面而不是一个接一个。
(function() {
if (!console) {
console = {};
}
var old = console.log;
var logger = document.getElementById('log');
console.log = function(message) {
if (typeof message == 'object') {
logger.innerHTML += (JSON && JSON.stringify ?
JSON.stringify(message) :
String(message)) + '\n';
} else {
logger.prepend(message) = logger.innerHTML + message;
}
}
})();
“logger.prepend(message)= logger.innerHTML + message;”抛出引用错误“无效语句左侧”
答案 0 :(得分:0)
不知道您是否正在寻找JS解决方案,但使用CSS最简单的方法是在position: absolute
上使用bottom: 0
和#log
。演示jsfiddle
答案 1 :(得分:0)
上面的解决方案很棒,我只是没有足够的声望点来支持它。如果您希望获得最新消息:
(function() {
if (!console) {
console = {};
}
var old = console.log;
var logger = document.getElementById('log');
console.log = function(message) {
if (typeof message == 'object') {
logger.innerHTML += (JSON && JSON.stringify ?
JSON.stringify(message) :
String(message)) + '\n';
} else {
return logger.prepend(message);
}
}
})();
答案 2 :(得分:0)
你需要 - HTML DOM insertBefore()
方法
function myFunction() {
var newItem = document.createElement("LI");
var textnode = document.createTextNode("Water");
newItem.appendChild(textnode);
var list = document.getElementById("myList");
list.insertBefore(newItem, list.childNodes[0]);
}
<ul id="myList">
<li>Coffee</li>
<li>Tea</li>
</ul>
<p>Click the button to insert an item to the list.</p>
<button onclick="myFunction()">Try it</button>
<p><strong>Example explained:</strong><br>First create a LI node,<br> then create a Text node,<br> then append the Text node to the LI node.<br>Finally insert the LI node before the first child node in the list.</p>
在此处输入您的代码控制台测试:https://codepen.io/pedro404/pen/NWbLRLB