$ .focus()没有在JQuery 1.9.1中触发?

时间:2013-03-18 14:34:16

标签: jquery

$('#id')。focus()似乎没有在JQuery 1.9.1中触发。

这个小提琴(http://jsfiddle.net/qnLVR/12/)适用于以前版本的JQuery,但在1.9.1中有所突破。你可以通过在JSFiddle中更改JQuery版本并重新运行脚本来看到这一点。

手动聚焦输入将触发事件,但调用.focus()则不会。知道为什么会这样吗?

这是我的标记:

<input type="text" id="inp"> </input>
<button id='button'>Is Focused?</button>

这是我的javascript:

var focused = false;

$('#inp').focus(function() {
  focused = 'true';  
})

$('#inp').focus();
$('#button').click(function() {alert(focused)});

我正在使用Firefox,它确实可以在Chrome / IE9中使用

1 个答案:

答案 0 :(得分:2)

你遇到了这个错误:http://bugs.jquery.com/ticket/13363

如果您只是为了让处理程序运行而触发事件,请改用$('#inp').triggerHandler("focus")