如何在 div 标签中进行“实时”文本更改 [重复]

Posted

技术标签:

【中文标题】如何在 div 标签中进行“实时”文本更改 [重复]【英文标题】:How can i make a "Realtime" text change in div tag [duplicate] 【发布时间】:2020-08-13 09:29:20 【问题描述】:

所以,我有这个示例代码:

<textarea id="input" onkeydown="pressed()"></textarea>
<div id="output"></div>
<script>
function pressed()

    var input = document.getElementById('input').value;
    document.getElementById('output').innerhtml = input;

</script>

我的问题是,如果在input 上键入内容,脚本不会立即将其写入output,它只有在我键入另一个键后才会出现。 那么,有什么我做错了吗?请帮忙

【问题讨论】:

尝试onkeyup,让它在您点击按钮后触发 【参考方案1】:

使用input event - 然后粘贴也可以工作

document.getElementById("input").addEventListener("input", function() 
  document.getElementById('output').innerHTML = this.value;
)
<textarea id="input" ></textarea>
<div id="output"></div>

【讨论】:

【参考方案2】:

因为你使用的是onkeydown,它触发了立即按下的功能,而input将等于你按下之前输入的值。

使用 onkeyup 就可以了。

【讨论】:

以上是关于如何在 div 标签中进行“实时”文本更改 [重复]的主要内容,如果未能解决你的问题,请参考以下文章