为了账号安全,请及时绑定邮箱和手机立即绑定

关于li元素加索引

给每个li元素加上索引,为什么tittles[i].id = i可以,而把i换成index就不行?

正在回答

4 回答

应该是li标签里不带index属性吧!只有标签带的属性,标签里面才会显示啊!你换成value 、title属性都可以看的到,标签不带的属性不显示,但自定义之后照样运行。

0 回复 有任何疑惑可以回复我~
#1

饕餮3

对 我也发现了这个问题,id换成比如idx,标签里是不会显示的。。但是运行时没有问题的。。好奇怪,既然不显示,那去哪里了呢,怎么又能够生效呢
2017-10-22 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//594bcb1200015d7e05450188.jpg

http://img1.sycdn.imooc.com//594bcb120001066506270190.jpg

http://img1.sycdn.imooc.com//594bcb150001041e09410635.jpg

但是可以正常运行。

0 回复 有任何疑惑可以回复我~

一般来说,titles[i].index=i;应该是可行的,你看看你代码其他地方是不是有逻辑问题,检查下。实在找不出问题用谷歌开发者工具去看问题,你单独一个语句,看不出是为什么,。。

以下代码供参考:

下面这个ul,如何点击每一列的时候alert其index?:

<ul id=”test”>
   <li>这是第一条</li>
   <li>这是第二条</li>
   <li>这是第三条</li>

</ul>


var lis = document.getElementById('test').getElementsByTagName('li');

    for(var i =0 ;i<lis.length;i++){

        lis[i].index = i;

        lis[i].onclick = function(){

            alert(this.index);

        }

    }


0 回复 有任何疑惑可以回复我~
#1

鄢栋 提问者

首先非常感谢您的耐心回答,下面是我的仔细截图,跟你上面的代码没有区别,仅仅在于设置属性名不一样。
2017-06-22 回复 有任何疑惑可以回复我~
#2

鄢栋 提问者

不过,用setAttribute('index',i)是可以加上的,然后对应的mods调用的时候用getAttribute('index')来获取
2017-06-22 回复 有任何疑惑可以回复我~

index() 方法返回指定元素相对于其他指定元素的 index 位置。获得第一个匹配元素相对于其同胞元素的 index 位置。语法:$(selector).index() ;

你说的把i换成index,即   tittles[ index ].id = index ?;这样直观肯定是不行的,要用index获取到索引值后再将其作为参数传给li元素加索引

0 回复 有任何疑惑可以回复我~
#1

鄢栋 提问者

不是,我写错了,我的意思是换成titles[i].index=i就不行
2017-06-22 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

关于li元素加索引

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信