我理解调用jQuery事件$(selector).blur();
将调用trigger
并运行模糊事件处理程序。
这是否会在页面上提供任何其他元素,例如文件,身体,焦点?
N.B。虽然这看起来相当简单但我没有找到有关jQuery API或SO或Google的详细信息。
答案 0 :(得分:1)
我不认为它会给予任何其他元素关注。它似乎只是完全关注焦点(实际上,不是在IE中看到我的编辑)。我沿着以下几行连接了一个jsfiddle example:
<强> HTML 强>
<div id="test">
<input id="test2" />
<input id="test3" />
<input id="test4" />
</div>
<强>的JavaScript 强>
$(function() {
$('*').focus(function() {
alert(this.id);
});
$('input').keypress(function(evt) {
if (evt.which == '13') {
$(this).blur();
evt.preventDefault();
}
});
});
基本上,它会在任何元素获得焦点时发出警报,当您在任何输入框中按Enter键时,它会调用.blur()
。在Opera中,没有其他元素在发生这种情在Firefox中,警告框会将焦点从元素上移开,因此您需要使用console.log()
而不是alert()
,否则它的行为方式相同。
修改强>
我在IE中检查了它,似乎焦点被改为body元素。如果您使用alert(this);
代替alert(this.id);
,则表示当输入丢失时,body元素会获得焦点。