我试图强制光标停留在一个表单字段中。我在体内有一个onFocus,所以当页面首次加载时,光标会转到表单字段,但我需要弄清楚如何不让它从该字段中移出。
我在整个页面上只有一个表单字段。我还需要光标返回到该表单字段,即使浏览器已最小化然后重新打开。
我一直在玩onBlur,但它没有用。
任何人都可以帮忙吗?
谢谢!
答案 0 :(得分:1)
表格不应该强迫用户做他们想做的事情;相反,他们应该适应用户的需求和期望。您试图强制用户只输入一个表单字段,这违反了Web设计规则,这是可访问性的主要问题。
尽管如此,以下内容应该有效:
<input type="text" id="field" />
JavaScript的:
var field = document.getElementById("field");
field.onblur = function() {
field.focus();
}
答案 1 :(得分:0)
诀窍是在模糊后等待一点时间,然后向后聚焦。幸运的是,我们可以设置0秒的超时,如下所示:
var input = document.getYourInputThatYouWantToFocusOn(),
focuser = function () {
input.focus();
};
focuser();
input.onblur = function () {
setTimeout(focuser, 0);
};
Mwahahahaha!