3

我正在尝试使用以下方法为不支持autofocus属性的浏览器提供支持:

<input type="text" autofocus/>
<input type="text" autofocus="autofocus"/>
<input type="text"/>​

<script type="text/javascript">
    $("input[autofocus]").first().focus();
</script>

但是,该选择器会返回 IE7 的所有输入元素,包括那些没有“自动对焦”属性的元素。它适用于 IE8+,我已经使用 jQuery 1.6.4、1.7.2 和 1.8.2 进行了测试。我在这里有一个 jsfiddle:http: //jsfiddle.net/HSC7K/4/

这些 jQuery 票似乎相关,但已关闭:

http://bugs.jquery.com/ticket/5637

http://bugs.jquery.com/ticket/7874

编辑: 更新 jsfiddle:http: //jsfiddle.net/HSC7K/6/

4

1 回答 1

1

我在 AJAX 调用后尝试自动对焦时遇到了同样的问题。

$("input[autofocus]").first().focus();

就是行不通。我正在使用 IE 11。我发现如果您删除输入选择器,它就可以工作。所以....

$("[autofocus]").first().focus();
于 2015-08-17T17:37:58.580 回答