2012-02-15 102 views
1

我有一個iframe,裏面是一個窗體,其中包含一個類型爲file和image元素的輸入元素。Tabindex iframe中的元素

使用Tab鍵時,它將整個焦點放在iframe上,不會集中在輸入框上,下一次按Tab鍵會着重顯示類型爲file的輸入元素的Browse按鈕。

我的要求是,當我按Tab鍵時,焦點會放在輸入文本框上,然後放在瀏覽按鈕上,最後放到圖像元素上。

我試圖將tabindex設置爲0,但它不起作用。

請建議如何通過元素控制標籤順序。

回答

1

您在iframe中的表單與主頁面是分開的,因此您需要將iframe中的對象放在主頁面上,以便tabindex像您需要的那樣工作。

做到這一點的一種方法是使用Ajax加載表單,而不是使用iframe。這樣你就可以根據需要動態加載和設置tabindex。

一旦你已經解決了有兩頁的問題,即「主」和「iframe中」,你只需要設置tabindex又將每一個元素,增加值,以顯示所需的選項卡順序。唯一的另一個警告是,你不能在圖像上設置tabindex。一個解決辦法是包裹圖像中不接受tabindex屬性,如a元素的元素...

類似下面應該工作,輸入,按鈕,鏈接(圖)

<input tabindex="1" name="" value="" id="" type="text" /> 

<button tabindex="2" name="" value="browse" id="browse" /> 

<a href="" tabindex="3"><img src="" /></a> 

有關的tabIndex屬性的詳細信息,請參見本頁面(舉例)

http://www.w3schools.com/jsref/prop_html_tabindex.asp

而且本指南與屬性可訪問性

http://webdesign.about.com/od/usability/a/aa071105.htm