首頁 > 後端開發 > php教程 > 為什麼我的 JavaScript 事件在動態元素追加後沒有被觸發?

為什麼我的 JavaScript 事件在動態元素追加後沒有被觸發?

Patricia Arquette
發布: 2024-11-14 11:49:02
原創
467 人瀏覽過

Why Are My JavaScript Events Not Triggering After Dynamic Element Appending?

動態元素追加後 JavaScript 事件未觸發

您遇到了將新元素追加到 DOM 後 JavaScript 事件未觸發的問題。這是因為 jQuery 僅識別頁面載入期間最初執行時存在的元素。

要解決此問題,您需要使用事件委託來擷取動態元素中的事件。事件委託涉及擷取頁面載入期間已經存在的 DOM 中較高層級的事件。這允許新添加的元素中的事件冒泡並處理。

在您的情況下,您可以將點擊事件委託給頁面載入期間存在的父元素。例如,您可以變更 JavaScript 程式碼以使用 on() 方法,如下所示:

$(document).on('click', '.races', function(e) {
  // Your code here
});
登入後複製

這樣,使用類別「.races」新增的任何新元素都會繼承點擊事件處理程序。實作事件委託時記得使用 on() 方法而不是 click()。

以上是為什麼我的 JavaScript 事件在動態元素追加後沒有被觸發?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板