我有一个问题。我正在使用jQuery 1.8.2。我想对焦点事件做出反应,并将foucs重置为特殊条件下剩下的元素。现在,我得到了一个非常简单的代码片段,该片段在野生动物园中陷入了循环,我不明白为什么会发生这种情况...也许您可以帮助我,这是一个非常简单的示例:

JS:

$("#test").focusout( function () {
    alert("FocusOut event got triggered.");
    $("#test").focus();
});​


HTML:

<input type="text" id="test" />​


也许您想尝试一下这个演示:
http://jsfiddle.net/ds38v/3/只需单击进入输入框,然后再次保留。

最佳答案

关于此问题,浏览器存在一些差异。因此,请使用超时来像“ leaveFocus”一样“模拟”它,然后再次使用“ focus”事件:

$("#test").focusout( function () {
    window.setTimeout(function() {
        $("#test").focus();
    },1);
});​


这样就可以了。

希望对您有帮助...

07-24 09:38
查看更多