保持正文在底部滚动,除非用户在javascript中向上滚动
我有一个程序,用户输入一些东西,然后在“控制台”中输出一些东西。除非用户向上滚动,否则最新输入的东西将保留在底部 我的文档主体似乎是我可以添加隐藏滚动效果的地方。我读了另一篇文章,使用了scrollTop和scrollHeight,但它不起作用保持正文在底部滚动,除非用户在javascript中向上滚动,javascript,html,Javascript,Html,我有一个程序,用户输入一些东西,然后在“控制台”中输出一些东西。除非用户向上滚动,否则最新输入的东西将保留在底部 我的文档主体似乎是我可以添加隐藏滚动效果的地方。我读了另一篇文章,使用了scrollTop和scrollHeight,但它不起作用 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta nam
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href = "style.css">
</head>
<body id = "scroll">
<div id="game">
<div id="console">
</div>
</div>
<div id = "command-box">
<div id = "cmd">
<input id = "command" onkeypress = "doAThing(event);">
</div>
</div>
</div>
<script src = "variables.js"></script>
<script src = "code.js"></script>
</body>
</html>
您可以为“autoscroll”设置一个复选框,这样会更简单。我会为该值设置什么?
var input = document.querySelector("#command");
var theConsole = document.querySelector("#console");
theConsole.scollTop = theConsole.scrollHeight;
var myScroll = document.getElementById("scroll");
function doAThing(event) {
var theKeyCode = event.keyCode;
if(theKeyCode === 13) acceptCommand();
setInterval(scrollUpdate, 1000);
}
function scrollUpdate() {
myScroll.scrollTop = myScroll.scrollHeight;
}
function acceptCommand() {
var p = document.createElement("p");
if(input.value === "hi") theConsole.append("Hi!", p);
if(input.value === "ping") theConsole.append("Pong!", p);
}