我在一个文本字段(输入消息)和发送按钮上方制作了简单的网络聊天、气泡(消息)。当我单击其他内容时,如何使输入文本字段保持焦点而不丢失(焦点始终位于 id="input_message" 的输入上)?
问问题
5321 次
3 回答
10
var el = document.getElementById('input_message');
el.focus();
el.onblur = function () {
setTimeout(function () {
el.focus();
});
};
这是小提琴:http: //jsfiddle.net/MwaNM/
于 2012-11-26T21:25:37.970 回答
5
这是一个肮脏的黑客。
<input type="text" id="input_message" />
<script type="text/javascript">
with (document.getElementById('input_message')) {
onblur = function(e) {
var elm = e.target;
setTimeout(function(){elm.focus()});
}
onkeydown = function(e) {
var key = e.which || e.keyCode;
if (key == 9) e.preventDefault();
// code for tab is 9
}
}
</script>
于 2012-11-26T21:51:41.580 回答
0
var inputElement = document.getElementById("input_message");
inputElement.focus();
inputElement.addEventListener("blur", function(event){
inputElement.focus();
});
于 2016-05-29T13:53:52.977 回答