点击一个ul的五个li元素,分别弹出他们的序号,怎么做?
2024-08-30 19:11:41
方法1 :
for(var i=0; i<oLis.length; i++){
oLis[i].onclick = (function(j){
return function(){
alert(j);
}
})(i);
}
这样的话, 给每个li绑定onclick事件时, 其实绑的是一个立即执行函数, 这个立即执行函数的参数是i, 因为它是立即执行的, 循环时已经把i的值赋给了li的onclick事件, 所以在外部函数里的i改变后并不会影响i的值.
另一种实现方法:(立即执行函数)
for(var i=0; i<oLi.length; i++){
(function(j){
oLi[j].onclick = function(){
alert(j);
};
})(i);
}
最新文章
- [转]彻底征服Word 2007标题多级列表
- [转]深入分析 Java 中的中文编码问题
- Microsoft.Jet.OLEDB.4.0和Microsoft.ACE.OLEDB.12.0的区别
- [GIF] GIF Loop Coder Single Mode
- div弹出登录窗口
- HTML入门
- SSH端口转发(本地转发、远程转发、动态转发)
- OTP&;ETS
- php 中swoole安装
- centos7之zabbix入门(一)
- MFC剪贴板通信
- 浏览器本地存储(browser-storage)
- MySql中Blob与Text的区别
- Summary #ToBeContinue......
- shell编程技巧和陷阱
- bzoj2956: 模积和(数论)
- 019sys模块
- 一点一点看JDK源码(五)java.util.ArrayList 后篇之sort与Comparator
- Node.js 使用爬虫批量下载网络图片到本地
- mysql 练习题答案