原文: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