WorM32, Так просто делать не надо и всё. Нет никакого преимущества в том чтобы сделать так, зато потенциальных граблей и трудновылавливаемых багов - завались.
same4, Какие проблемы задать высоту?
<style>
.warning{color: red}
#main-output p{margin:0; padding:0}
#main-output {overflow:auto; height:100px; direction:rtl; text-align:left}
</style>
<input type='text' id="main-input"><input type='button' id="main-button" value="go">
<div id="main-output"></div>
<script>
var input = document.getElementById('main-input'),
button = document.getElementById('main-button'),
output = document.getElementById('main-output');
function enterCommand(){
if (input.value in commandList) commandList[input.value]();
else out('Команда не существует', 'warning');
}
button.onclick = enterCommand;
var commandList = {
test: function(){
out('Просто тест')
},
test2: function(){
out('Просто тест2')
}
};
function out(msg, cls){
var p = document.createElement('p');
p.appendChild(document.createTextNode(msg));
if(cls) p.className = cls;
output.appendChild(p)
}
</script>