将用户输入<input>添加到



对于这个例子,我有一个简单的html标记:

<input id="INPUT"/>

我现在想要实现的是当用户键入某些内容时。他的输入在#INPUT中显示。我试过这个,但不知何故它不起作用:

$('document').keydown( function(e) {
   $('#INPUT').focus();
});

我应该怎么做?谢谢http://jsfiddle.net/GdVvd/

你不需要在document两边加上引号,因为如果你把它放在引号里,选择器会寻找具有tagName匹配"文档"的元素。

现场演示

$(document).keydown( function(e) {
   $('#INPUT').focus();
});

HTML5的解决方案是简单地给你的input元素一个autofocus属性。这将使其在页面加载时聚焦:

<input id="input" autofocus />

JSFiddle demo.

但请注意,此解决方案目前不适用于IE或Firefox。

请从文档中删除单引号,请尝试以下操作:

$(document).keydown( function(e) {
   $('#INPUT').focus();
});

吉斯菲德尔

你应该删除引号:

$(document).keydown( function(e) {
   $('#INPUT').focus();
});

您需要像这样从文档中删除"。

$(document).keydown( function(e) {
   $('#INPUT').focus();
});

http://jsfiddle.net/GdVvd/

如果您

删除document周围的single quotes,您的 js 函数将像其他用户指出的那样工作。这也意味着用户按下的任何键都会使文本框成为焦点。相反,您可以进一步尝试检查要允许用户使用的有效密钥。

//var keycodes = [];
$(document).keydown( function(e) {
   if(e.which == 'somekeycode')
     $('#INPUT').focus();
});

最新更新