在javascript中,當我收到一個焦點事件時,如何確定哪個元素失去了焦點?我試圖避免必須在我的網頁中的所有元素上放置onblur事件處理程序。哪個HTML元素失去焦點?
1
A
回答
0
@pbrodka:目標/ srcElement屬性將引用元素與焦點的onfocus事件
副手我看不到有辦法讓這短暫的onblur的,或者如果你關心的對象集所有的焦點方法都可以存儲對該對象的引用。它也有可能事件冒泡可以讓你出獄
這一切感覺有點代碼味道的,雖然 - 也許你需要更詳細地說明這個問題
0
難這一點。您不能使用事件委派來確定哪個控件最後產生模糊,因爲焦點/模糊不會起泡。已經有一些嘗試「修復」這個,但他們是越野車,而不是跨瀏覽器的彈性。 我可以問你爲什麼你需要這個信息,因爲也許有一個替代解決方案。
0
不幸的是,onblur事件不會冒泡,否則你可能會在窗口的水平已經處理它總是知道什麼時候一個元素失去焦點。
照現在的情況,我相信這將是很難不這樣做,正如你所說,添加onblur事件處理程序的所有元素(一個真正討厭的解決方案;-)。
0
最簡單的解決方法是編寫走所有表格,然後在窗體中的所有元素,併爲安裝的每個處理器的onblur(這可能會調用一些全局函數)的功能。該處理程序將獲得一個事件,並且此事件將包含您所尋找的信息。
這樣,您只需在body.onload中調用此方法一次,無論文檔有多複雜,它都可以工作。
唯一的缺點是,如果您將表單動態添加到當前文檔中,您將需要調用它。在這種情況下,您必須確保不要再次安裝處理程序(否則您將得到虛假的重複事件)。
0
它可以委派的重點和模糊事件,如果你按照PPK的建議,在這裏: http://www.quirksmode.org/blog/archives/2008/04/delegating_the.html
相關問題
- 1. 哪個元素失去了焦點? [Windows Phone 7,Silverlight]
- 2. 如何知道哪個元素有另一個元素失去焦點?
- 3. 元素失去焦點時運行JavaScript
- 4. 反應Noob - onChange元素失去焦點
- 5. 防止元素失去焦點
- 6. 如何防止元素失去焦點?
- 7. 失去焦點的實際元素
- 8. 需要知道哪個元素在另一個元素失去焦點時獲得焦點
- 9. CKeditor:點擊另一個元素時不要失去焦點
- 10. 當點擊另一個元素時不要失去焦點
- 11. 我如何設置一個元素的過渡失去焦點
- 12. 讓一個元素失去焦點在jquery
- 13. UIGestureRecognizer「失去焦點」?
- 14. Flex:ItemEditor失去焦點!
- 15. 層失去焦點
- 16. java - 失去焦點
- 17. UISearchBar失去焦點
- 18. TextBox失去焦點
- 19. Ultraoptionset失去焦點
- 20. tvos UICollectionView失去焦點到以前的焦點單元格
- 21. 當其他元素集中時,輸入會失去焦點
- 22. onChange僅在元素失去焦點時調用
- 23. 單擊兒童時如何不失去元素焦點
- 24. Vue模型只在輸入元素失去焦點時更新
- 25. 防止LostFocus在兒童元素失去焦點時被觸發
- 26. bootstrap-wysiwyg失去焦點
- 27. ListView行失去焦點
- 28. 失去焦點的頁面
- 29. 的Android ICS失去焦點
- 30. PropertyGrid部隊失去焦點
這聽起來泄漏。您需要在某種全局變量中存儲對每個元素的引用。 IE可能像篩子一樣泄漏。 – 2008-11-18 15:48:31