Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML中onkeydown事件的奇怪行为_Javascript_Html_Element_Undefined Behavior - Fatal编程技术网

Javascript HTML中onkeydown事件的奇怪行为

Javascript HTML中onkeydown事件的奇怪行为,javascript,html,element,undefined-behavior,Javascript,Html,Element,Undefined Behavior,我正在构建一个网站,其中有一个输入文本字段,您可以在其中键入博客文章的降价,我希望该网站显示结果的预览(我正在使用significJS库进行渲染过程)。我目前正在我的元素中使用onkeydown事件,这样每当按下键盘按钮时,我的JavaScript代码就会触发,并修改输出窗口div的内容 HTML代码看起来类似于: <textarea onkeydown="render();" placeholder="type Markdown here to see th

我正在构建一个网站,其中有一个输入文本字段,您可以在其中键入博客文章的降价,我希望该网站显示结果的预览(我正在使用
signific
JS库进行渲染过程)。我目前正在我的元素中使用
onkeydown
事件,这样每当按下键盘按钮时,我的JavaScript代码就会触发,并修改输出窗口
div
的内容

HTML代码看起来类似于:

<textarea onkeydown="render();" placeholder="type Markdown here to see the output as HTML" id="text"></textarea>
<div id="output"></div>
这很简单,但当我运行程序时,降价输出似乎落后于输入,如下所示:

===== INPUT - the text box =====
Hello world!

你可以清楚地看到,输出落后于输入。据我所知,这不应该发生-或者这是
onkeydown
事件的一些无法解释的行为-也许它在插入字符之前触发,导致我必须执行延迟?

使用
输入事件
oninput=“render();”
这将捕获键入的文本。

onkeydown在添加输入之前触发。您可以通过类似event.keyCode的方式按下该键。或者,您可以添加延迟或使用onkeyup。
===== INPUT - the text box =====
Hello world!
===== OUTPUT - the div =====
Hello world