我正在为朋友制作一个页面,我有一个隐藏的文本字段,当用户键入时,文本会被转换到div中,这样看起来就像是在屏幕上而不是在输入字段中键入。
以下是该页面的链接:http://merkd.com/godis.php
以下是我用来响应按键的功能:
$('#hiddenInput').keydown(function() {
var input = $('#hiddenInput').val();
var html = '<div style="float: left;">'+input+'</div><div id="cursor">|</div>';
$('#typingArea').html(html);
});
文本字段现在是可见的,以便您可以看到问题。当输入或删除文本时,直到下一次按键时才会做出响应。所以,如果我打了一封信,在我打下一封信之前,什么都不会显示。
我查看了jQuery .on()
文档,但找不到任何相关内容。非常感谢您的帮助。
附言:我知道这应该是一个单独的问题,但有没有一种简单的方法可以让文本字段始终处于焦点?我想这样做,无论用户点击哪里或其他什么,如果他们键入,文本仍然会显示出来。
使用.keyup()
事件,因为当您第一次按下(keydown)时,字母永远不会被键入,因此var html
将获得上一个值。对于第二部分,您可以在document
中绑定keypress
事件来集中您的输入字段。