2009-10-24 101 views
0

我想捕捉哪些元素焦點時,用戶使用Tab鍵移動他們的焦點。例如,有一個表單,用戶可以使用Tab鍵向前移動到下一個表單元素。我想知道哪些元素是當前焦點。捕捉標籤鍵導航

感謝, 保羅

回答

0

但是也有一些關注相關的JavaScript事件。 onfocus和onblur(焦點對面)事件可用於更新一個變量,該變量說明哪個表單元素當前處於焦點。

2

對於許多的事件類型可以使用事件代理,由此一個捕獲一些含元件上的事件,因爲它的氣泡建立文檔層次結構,然後建立起始事件的元素。不幸的是,focus,blur和事件不會冒泡。

但是,在實現標準DOM事件模型的DOM實現中,可以改爲使用捕獲階段,該階段將事件截取到它將觸發的元素的路上。

即使在IE8中,這在IE瀏覽器(IE)仍然沒有實現標準事件模型的情況下(驚喜,驚喜)不起作用。不過,IE擁有自己的focusinfocusout事件,其中泡泡。

最終的結果是,像往常一樣,必須寫一個人的代碼,以便處理正確的瀏覽器的工作方式,以及IE的工作方式。

幸運的是這是在哪裏quirksmode.org的PPK(又名彼得 - 保羅·科赫)已經完成了艱難的工作,這些情況之一:他的文章Delegating the focus and blur events應該告訴你所有你需要知道的,以及提供事件代表團如何工作的簡潔解釋。