2
我想對於那些沒有爲autofocus屬性支持的瀏覽器提供支持,採用的方法是這樣的:jQuery的「有屬性」選擇在IE7失敗(「自動對焦」)
<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/
如果你使用的是HTML5,你需要包含一個shiv以允許自動聚焦等元素。你做到了嗎? –
我正在使用自定義屬性,而不是HTML5元素,所以AFAIK它不需要shiv。我已經更新了小提琴,以顯示自定義屬性正在工作,但如果該屬性被稱爲「自動對焦」,它不起作用。 –
自定義屬性在XHTML中無效 - 您的文檔類型是什麼? http://stackoverflow.com/questions/2413147/are-custom-attributes-ok-in-xhtml自動對焦是HTML5中的新功能 –