我試圖控制我的表單,以及用戶如何通過表單元素'tabindex
屬性與它們交互。我所有的元素都有tabindex
指定,我希望這個值得到尊重和正確使用。使用jQuery來規避tabindex問題
我目前正在Mac/Firefox上開發,並且我知道默認的Mac系統設置,它將製表符切換設置爲僅輸入元素和列表。但是,我想覆蓋此任何其他設置,可能會阻礙任何系統/瀏覽器的這種方式。
我正在使用jQuery來試圖解決這個問題。這裏是我的代碼在這一點上:
$(":input").keypress(function(e){
if (e.which == 0)
{
tindex = parseInt($(this).attr("tabindex")) + 1;
$(":input[tabindex='" + tindex + "']").focus();
}
});
但是,這不是我想要的方式工作。當啓用默認的Mac設置時,這實際上會跳過tabindex,並且完全跳過非text/textarea項目。例如,如果我在input[tabindex=2]
上,然後按「Tab」鍵,我將發送到input[tabindex=4]
。如果我在input[tabindex=2]
之間框input[tabindex=2]
和input[tabindex=4]
之間,我發送到input[tabindex=5]
。
我要input[tabindex=2]
發送給我input[tabindex=3]
,select[tabindex=3]
,input[type=radio][tabindex=3]
等;基本上任何有tabindex
3.
讓我知道任何想法來規避這個問題。另外請告訴我,如果你知道我應該關注的任何其他系統/瀏覽器上的其他內容。
它是否適用於選擇框? – cometta 2010-09-15 02:48:51