慕盖茨2022422
2016-08-15 16:37
JavaScript代码
for(var i=0;i<buttons.length;i++)
{
buttons[i].onclick=function(){
var myIndex=parseInt(this.getAttribute('index'));
alert(myIndex);
var jia=-650*(myIndex-index);
change(jia);
index=myIndex;
};
HTML代码
<ul id="buttons">
<li><a index="1"></a></li>
<li><a index="2"></a></li>
<li><a index="3"></a></li>
<li><a index="4"></a></li>
<li><a index="5"></a></li>
</ul>
你的buttons变量应该指的是这个ul元素下的所有li元素,那么这行代码
var myIndex=parseInt(this.getAttribute('index'));
中的this指向的就是第i个li元素,所有获取index属性时会返回为NaN,另外index是不符合规范的属性,如果一定要用的话建议加上“data-”前缀
已解决把a标签中的index挪到li中就可以实现
<ul id="buttons">
<li index="1"><a></a></li>
<li index="2"><a></a></li>
<li index="3"><a></a></li>
<li index="4"><a></a></li>
<li index="5"><a></a></li>
</ul>
焦点图轮播特效
65296 学习 · 611 问题
相似问题