addEvent?所有偵聽器重新定位的目標。本文將解決此問題,並提供一個使用閉包的修正代碼:
問題概述:
嘗試使用循環為多個物件添加事件偵聽器,但最終所有偵聽器都針對相同的物件(最後一個)。
修正法典:
closures是一種防止此類問題的方法。修改後的程式碼如下:
// 函數在點擊時運行: function makeItHappen(elem, elem2) { var el = document.getElementById(elem); el.style.backgroundColor = "red"; var el2 = document.getElementById(elem2); el2.style.backgroundColor = "blue"; } // 自動載入函數以新增偵聽器: var elem = document.getElementsByClassName("triggerClass"); for (var i = 0; i免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3