js中的index什么意思,
2022-04-26 19:36:43 作者 : 滚烫思念 围观 : 284次 评论
js中index怎么用 比如:
防止2113闭包函数中无法正常获5261取当前索引i,而衍生出的一4102个绑定在dom元素上的数据index
参考链接即可:1653http://zhidao.baidu.com/question/1430246486433904859.html?fr=iks&word=%B1%D5%B0%FC+++yugi111&ie=gbkjavascript里面的index属性问题
因为任何浏2113览器的样式表集合中没有5261index这个属性
你加进去4102只IE能识别是,因为IE兼容性以及忽1653略错误的“能力”强一点而以。如果你确实想给这几个元素加个编号顺序,可这样设置 加个 name 属性,如 name="img1"然后可用 var MyImg=document.getElementsByName("img1"); 去引用这几个对象MyImg[0].src = "img/1.jpg";MyImg[1].src = "img/2.jpg";......................................js中的索引值这个看不懂啊
纠正一下不是2113abtn[i].index=i而是5261aBtn[i].index=i,因为之前定义的是aBtn,js区分大小写。
简单原因其4102实就是为了保存住每个循环时i的值。没明白,1653看下面。<script type="text/javascript">window.onload=function() { var aBtn=document.getElementsByTagName('input') var arr=['王二','王三','王四'] for (var i = 0; i < aBtn.length; i++) { aBtn[i].index=i aBtn[i].onclick=function(){ alert(i);//3 this.value=arr[this.index]; } /*闭包写法 (function(){ var ii=i;//将当前的i值保存到闭包方法中 aBtn[i].onclick=function(){ alert(ii);//0、1、2 this.value=arr[ii]; } })(); */ }}</script><input type="text" /><input type="text" /><input type="text" />加了个alert就会发现,当点击文本框时,弹出的其实都是3。原因如下:首先for执行完成时i的值是3,这个应该知道。而i的作用域是在整个for中的,也就是说只要在for中改变了i的值,然后alert(i);就是i改变后的值了。aBtn[i].index=i是将当时循环的i值保存到控件对象上,然后点击时直接获取当前触发的控件对象上的值,所以就能正常获取到0、1、2了。当然如果不想保存到控件对象,也是有办法实现的,代码中有一个闭包的注释,打开它,去掉for中的其它内容,就可以了,最后实现的效果是一样的。 本文标签:js中的index什么意思什么意思jsindex 标签:#js中的index什么意思# #什么意思# #js# #index#版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。>