原文:js在for循環中綁定事件

本來想着直接通過js代碼來點擊事件時讓div的寬度變化然后寫了如下的代碼 但是無論如何點擊都一下子顯示完全部的寬度 然后網上通過很久查找網上的資料改成如下: 就能夠顯示出我想要的效果了 縱觀這樣的代碼現象,才明白是因為閉包的問題,上圖中的變量i直接引用了父函數中的i,所以在循環結束后才將最終的值傳給了 子函數,而下圖則只是引用了父函數中的i的值, ...

2017-03-20 19:54 0 2661 推薦指數:

查看詳情

JQuery在循環中綁定事件的問題詳解

JQuery在循環中綁定事件的問題詳解 有個頁面上需要N個DOM,每個DOM里面的元素ID都要以數字結尾,比如說 ? 1 2 3 ...

Thu Nov 24 01:06:00 CST 2016 0 3851
js循環綁定事件

首先看這段代碼: 這段代碼如果不仔細看的話會誤以為三個按鈕點擊結果分別為0,1,2。但是運行結果卻是3,3,3。 我們來分析一下代碼執行過程:前三遍循環分別給按鈕0,1,2綁定了alert(i)的事件,第四遍循環開始時i=3,不符合i<=2的條件 ...

Mon Aug 24 05:04:00 CST 2015 0 8132
js循環綁定事件

js循環綁定事件js中,用循環來為一個元素隊列的元素綁定事件,是一個常見的問題。 通常進入誤區的新人,都會理想當然地這么寫代碼: (假設元素隊列為o,默認使用jQuery) //error method var o =$('.blockHead'); for(var i ...

Fri Aug 22 18:39:00 CST 2014 0 2796
關於在for循環中綁定事件打印變量i是最后一次。

其實函數引用的外部變量都是最后一次的值。 再來看一個例子:   如果你知道作用域鏈就好辦多了,在這個函數里面的i其實引用的是最后一次i的值,為什么不是1,2,3,4...呢?因為在你for循環的時候,你並沒有執行這個函數,你這個函數是在你點擊的時候才執行的,當執行 ...

Thu Feb 25 06:46:00 CST 2016 4 9628
JS 循環綁定click事件

一、問題場景:    綁定事件有一個坑----總是綁定最后一個元素 二、解決: 1、第一種   第一種方法:編寫一個function,在這個function中返回一個函數 :   其中.get(0)指的是將jQuery對象轉為DOM對象。 ...

Fri Jul 31 23:33:00 CST 2020 0 618
js動態循環綁定事件的變量問題

在編寫JS的時候我們經常會遇到要對一系列元素進行事件綁定循環對元素的事件進行賦值,在這個過程中我們會遇到一個問題,那就每個元素事件運行的時候變量怎么都是相同的值。 這里涉及到變量的作用域的問題,可以用閉包來解決這個問題。 這里舉個簡單的列子來說明: <ul id="ulDemo ...

Fri Aug 29 22:42:00 CST 2014 0 3903
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM