javascript - 如何使元素始终位于结束标记之上

标签 javascript jquery html css

这是片段

function send(){
  var message = document.getElementById('input').value;
  document.getElementById('output').innerHTML += `<p>${message}</p>`;
  document.getElementById('output').scrollTop = output.scrollHeight;
}
#output{
  overflow: auto;
  height: 150px;
  background-color: red;
}

#typing-indicator{
  height: 15px;
  background-color: green;
}
<div id="output">
<div id="typing-indicator"></div>
</div>
<input id="input"/>
<button id="send" onclick="send()">SEND</button>

我要#typing-indicator始终位于 #output 的底部 我怎样才能用纯 JS 或 Jquery 做到这一点? 我需要注入(inject) <p/> #typing-indicator 之前的标签

最佳答案

你可以试试 jQuery .after()

代替:

document.getElementById('output').innerHTML += `<p>${message}</p>`;

尝试:

$('#typing-indicator').after(`<p>${message}</p>`)

引用:http://api.jquery.com/after/

function send(){
  var message = document.getElementById('input').value;
  $('#typing-indicator').after(`<p>${message}</p>`);
  $('#output').scrollTop();
}
#output{
  overflow: auto;
  height: 150px;
  background-color: red;
}

#typing-indicator{
  height: 15px;
  background-color: green;
}
<script src="https://code.jquery.com/jquery-3.1.0.js"></script><div id="output">
<div id="typing-indicator"></div>
</div>
<input id="input"/>
<button id="send" onclick="send()">SEND</button>

关于javascript - 如何使元素始终位于结束标记之上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56618669/

相关文章:

javascript - 如何在不每次都搜索单选组的情况下使用 jQuery 找出选择了哪个单选按钮?

javascript - 我如何分批使用可迭代对象(大小相同的 block )?

javascript - 使用 jQuery 在客户端搜索表

javascript - 节目结束后将焦点设置为锚定在 div 内?

HTML 在网页上居中我的对象(导航栏、图像)

javascript - 语义 ui 如何使用 javascript 启用或禁用下拉菜单

javascript - 绑定(bind)后获取kendo scheduler数据源

javascript - html 表格行中值的总和

c# - CSS - 在 Outlook 浏览器中设置图像大小

HTML5 离线 "Application Cache Error event: Manifest fetch failed (-1)"