初学者经常碰到的,即获取HTML元素集合,循环给元素添加事件.在事件响应函数中(event handler)获取对应的索引.但每次获取的都是最后一次循环的索引.原因是初学者并未理解JavaScript的闭包特性. 有个网友问了个问题,如下的html,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1,2,3,4. 1.  <!DOCTYPE HTML> 2.  <html> 3.  <head> 4.  <meta charset="utf…
初学者经常碰到的,即获取HTML元素集合,循环给元素添加事件.在事件响应函数中(event handler)获取对应的索引.但每次获取的都是最后一次循环的索引.原因是初学者并未理解JavaScript的闭包特性. 有个网友问了个问题,如下的html,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1,2,3,4. 1.  <!DOCTYPE HTML> 2.  <html> 3.  <head> 4.  <meta charset="utf…
原文参考:http://blog.csdn.net/gaoshanwudi/article/details/7355794 初学者经常碰到的,即获取HTML元素集合,循环给元素添加事件.在事件响应函数中(event handler)获取对应的索引.但每次获取的都是最后一次循环的索引.原因是初学者并未理解JavaScript的闭包特性. 有个网友问了个问题,如下的html,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1,2,3,4. 1.  <!DOCTYPE HTML> 2.…
初学者经常碰到的,即获取HTML元素集合,循环给元素添加事件.在事件响应函数中(event handler)获取对应的索引.但每次获取的都是最后一次循环的索引.原因是初学者并未理解JavaScript的闭包特性. 1. <!DOCTYPE HTML> 2.  <html> 3.  <head> 4.  <meta charset="utf-8" /> 5.  <title>闭包演示</title> 6.  <…
给ul中的li添加事件的多种方法 这是一个常见,而且典型的前端面试题 <ul> <li>11111</li> <li>22222</li> <li>33333</li> </ul> 错误方式: var len=lis.length; for(var i=0;i<len;i++){ $(lis[i]).click(function (){ alert(i); }) } 正确方式一(利用jq中的each) v…
React 函数组件中对window添加事件监听resize导致回调不能获得Hooks最新状态的问题解决思路 这几天在忙着把自己做的项目中的类组件转化为功能相同的函数组件,首先先贴一份该组件类组件的关键代码: import React, {Component} from "react" // 防抖组件 import { debounce } from 'throttle-debounce'; // 引入connect用于连接UI组件与redux import {connect} fro…
一:JQuery 对象和 Dom 对象 在使用 JQuery 过程中,我们一般(也是绝大多数情况下,除非我们使用了第二个框架)只有两类对象,即:JQuery 对象和 Dom 对象.Dom 对象指的是普通的 JavaScript 对象,而 JQuery 对象则是包装 Dom 对象后产生的对象.在声明变量的时候,出于规范,我们一般在变量名字前加一个 $ 号以标记它是一个 JQuery 对象,如下: var $var = - // JQuery 对象 var var = -   // dom 对象 但…
我遇到一个比较诡异的现象 在TABLE中,我在TABLE的第一列添加了一个MessageCheckBox,并为其设置全局刷新的FireAction事件selection, 但是点击勾选框按钮之后,事件并没有生效. 几经周折之后,某大神告诉我一种解决方式,在TABLE中第一列添加一个formValue的列,此事件就能生效了. 真是哔了狗了.…
在JavaScript中,我们经常要给已定义的对象添加一些方法,如下:    function circle(w,h){      this.width=w;      this.height=h;    }    var cir = new circle(8,9);    这时我们突然要计算cir对象的面积,怎么办呢?我们可以专门为这个对象新定义一个计算面积的方法.    function area(){       return this.width*this.height;    }   …
我们可以使用CorelDRAW来绘制矢量图形,在勾画出简单的图形后,往往还需要对它们进行一些或简单或复杂的处理,以增加一定的艺术效果.CDR中可供选择的效果有很多,作用的对象可以是文字,也可以是图案. 一.常用的效果 被用户广泛使用到的效果有阴影.块阴影.斜角和马赛克. 图1:CorelDRAW的块阴影效果 这些效果的使用可以增加作品的3D效果,当作用在文字上时,可以协助用户制作出自定义的艺术字模型.而更多时候,为对象添加适当的效果后,将会使打印出来的效果更佳,增加实物作品的艺术感. 二.块阴影…