【发布时间】:2016-07-02 14:28:18
【问题描述】:
我已经创建了一个实时搜索,我希望当用户点击 ESC 时它应该专注于输入框并自动删除其内容(如果不是空的)。
我可以删除内容,但它不会专注于按键。
当我在window.onload 上使用focus(); 函数时,它会起作用
我有现有的代码:(也尝试了评论中的代码,感谢Focus Input Box On Load和JavaScript set focus to HTML form element)
var aramaAlani = document.getElementById("id_arama");
$( document ).on( 'keydown', function ( e ) {
if ( e.keyCode === 27 ) { //ESC key code
aramaAlani.reset();
aramaAlani.focus();
//aramaAlani.scrollIntoView();
//document.forms[ 'id_arama' ].elements[ _element ].focus();
//document.getElementById("id_search").focus();
}
});
有没有什么具体的方法可以让关键事件聚焦到元素上?
【问题讨论】:
-
$(document) 检查此项并添加 id 或类或元素
-
这个脚本是在
head还是在body底部? -
@MoshFeu 它位于
head。 -
所以,你需要把它移到body底部,或者用
$(document).ready包裹起来。这个问题的更多信息:stackoverflow.com/questions/14328449/… -
@MoshFeu,感谢您的及时回复。我试图移动它或用
$(document).ready包裹它,但它不起作用。
标签: javascript html onfocus