in3*_*n3D 5 html input javascript-events
我试图用这段代码继续关注输入元素:
<input onblur="this.focus()" />
Run Code Online (Sandbox Code Playgroud)
但它似乎没有用.
Den*_* O. 10
如果我们只是.focus()在blur事件上调用,它将恢复焦点,但实际上没有文本光标.要处理这个问题,我们必须让元素失去焦点,然后在几毫秒内返回它.我们可以用setTimeout()它.
$('#inp').on('blur',function () {
var blurEl = $(this);
setTimeout(function() {
blurEl.focus()
}, 10);
});
Run Code Online (Sandbox Code Playgroud)
这是工作示例.小心 - 输入后不能保留文本字段=)
编辑我使用了jQuery,但没有它就可以轻松完成.
EDIT2这是纯粹的JS版本小提琴
<input type="text" id="elemID" />
<script type="text/javascript">
document.getElementById('elemID').onblur = function (event) {
var blurEl = this;
setTimeout(function() {
blurEl.focus()
}, 10);
};
</script>
Run Code Online (Sandbox Code Playgroud)