强制光标在表单域中

时间:2011-04-22 04:46:24

标签: javascript html

我试图强制光标停留在一个表单字段中。我在体内有一个onFocus,所以当页面首次加载时,光标会转到表单字段,但我需要弄清楚如何不让它从该字段中移出。

我在整个页面上只有一个表单字段。我还需要光标返回到该表单字段,即使浏览器已最小化然后重新打开。

我一直在玩onBlur,但它没有用。

任何人都可以帮忙吗?

谢谢!

2 个答案:

答案 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!