2011-05-31 34 views
0

比方說,我有一個輸入文本字段和幾個錨鏈接。當特定輸入字段失去焦點時,不會觸發任何事件(例如單擊)

1)用戶光標聚焦在輸入文本字段中。

2)當用戶點擊該字段以外的其中一個鏈接時,輸入字段失去焦點,並觸發點擊事件(壞 - 我只想第一次點擊外部是失去焦點那個輸入字段)。

只有當此輸入字段不再焦點時,纔會觸發後續點擊。

感謝

+0

讓我們直筆直:輸入元素是關注的,當你點擊它以外的東西時,它會觸發一個點擊事件,但是當你再次點擊那個東西時,它不會觸發?所以,只有輸入失去焦點後的第一個點擊事件纔會被觸發? – 2011-05-31 17:25:36

+0

讓我澄清。一個輸入元素被聚焦,當我點擊它之外的東西時,它會觸發一個點擊事件(不好 - 我希望它忽略這個點擊事件)。當我再次點擊那個東西時,(好)。 – Lyon 2011-05-31 17:28:23

回答

1

您應該使用onblur事件監聽器中的文本字段,將放在一個標誌,指示用戶剛剛離開這個「神奇」的輸入。然後,在錨點中的「onclick」事件中檢查該標誌,如果該標誌爲true,則調用「防止默認」(和/或將焦點返回到輸入)。 (可選)在小超時後清除標誌。

+0

我在想,可以做...但肯定可以有一個更清潔的方法? :) 謝謝! – Lyon 2011-05-31 17:31:06

+0

對我來說,它看起來像你能做的最好的,你也可以將全局偵聽器添加到文檔中,並且「preventDefault」將會稍微清晰一些,並且不需要跟蹤每個單獨的錨點。 – Juriy 2011-05-31 17:35:32

+0

我如何着手添加全局偵聽器?謝謝! – Lyon 2011-05-31 17:37:24

相關問題