勵志

勵志人生知識庫

什麼是事件代理

事件代理(Event Delegation),也被稱為事件委託,是一種在JavaScript中處理事件的有效技術。

事件代理利用了事件冒泡機制,允許開發者在一個父級元素上註冊一個事件處理函式,這樣,當在子元素中發生特定事件(例如點擊或鍵盤輸入)時,這個事件會被子元素的父元素捕獲。事件代理的主要優勢在於它不需要為每個子元素分別設定事件監聽器,從而提高了性能,特別是當頁面上有大量元素時。

例如,在一個包含許多按鈕的網頁中,而不是為每個按鈕單獨設定點擊事件監聽器,可以將所有點擊事件委託給一個父元素。當點擊發生時,點擊事件會首先到達被點擊的按鈕,然後「冒泡」上升到父元素,在那裡被事件代理處理。這樣,只有父元素需要處理事件,簡化了代碼並提高了效率。