JS實現迴圈給元素繫結事件的幾個常用方法

2021-07-11 04:02:12 字數 939 閱讀 6059

作為乙個js的初學者,想對一些元素迴圈繫結事件的時候總是出現各種問題,尤其是在對閉包沒有熟練掌握的時候更是一頭霧水。網上一查,果然好多初學者有這個困惑,既然這個問題總是出現,於是在我就總結了以下兩個比較好理解的解決方案,分享給大家:(可能還有更好的方式我沒有發現,請各位前輩分享

比如下面這個例子:

html**:

第乙個鏈結

第二個鏈結

第三個鏈結

js**:

window.onload = function() }}

執行結果:

發現不管點哪個鏈結都是彈出「3」,其實在我們呼叫onclick函式時候,外層迴圈結束已經結束了,i值結束為3跳出。

那其實換句話說,只要我們能把這個i值動態傳到onclick函式裡不就可以了。

解決方案一(給ali乙個count用於記錄位置):

window.onload = function() } }

解決方案二(可以迴圈給繫結事件的函式動態傳入引數,閉包的經典例子):

window.onload = function() 

}a(i);

}

}

如有錯誤請指出,謝謝

js 實現給未來元素新增事件。

未來元素 不是乙個頁面上的元素,是通過js或者通過後台直接渲染在頁面上的元素,也就是說這些元素不是直接寫在document中的。1.對於未來元素,我們想直接用js或者jq操作它們是不起作用的。1 element on click function 2.可以使用來操作未來生成的元素,可是這裡有乙個侷限...

jquery給動態元素繫結事件

在jquery中,我們經常使用 elem bind event,function 這種方式給元素繫結事件。在大部分情況下這種寫法無疑是適用的。然而,當頁面上原本不存在某些如button,select等元素,而是後期通過動態建立的方式建立出來的控制項,這種寫法,便不再適用了。selector on e...

jquery給動態新增的元素繫結事件

jquery給動態新增的元素繫結事件的方法 jquery中繫結事件一般使用bind,或者click,但是這只能是對已經載入好的元素定義事件,那些後來新增插入的元素則需要另行繫結。在1.7版本以前使用live。但是在1.8版本以後推薦使用on。需要給jquery 1.7版以前使用live動態繫結事件 ...