javascript - 如何获得li的索引
PHP中文网
PHP中文网 2017-04-11 11:08:49
[JavaScript讨论组]

我用var a=document.getElementsByTagName("li")得到了一个a数组如何用变量去保存a[i]里面的这个i?说白了就是我只想知道是第几个li!

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(5)
天蓬老师

我们常常会比较习惯于在元素的属性中以data-xxxx保存一些简单的数据,因此保存索引也可以这么干

var a=document.getElementsByTagName("li");
for(var i in a) {
    a[i].setAttribute('data-index', i);
}

保存之后,我们想要知道当前li对应的索引就很容易了,在属性中读取即可。

迷茫

使用index()获取对应索引。我一般都用jQuery。不知这样行不行,你试试看

var a=index(document.getElementsByTagName("li"));

希望对你有帮助

黄舟

可以设置在dom对象中

a[i].i = i

也可以在html里添加data属性

//jsp
<li data-i="${i}">
大家讲道理

推荐楼主用jQuery。设置好对应的var _index = $(this).index('li');就可以获取下标索引

PHPz

可以通过递归来计算该元素前面的元素个数就行啦。

大概代码这样。

HTMLElement.prototype.index = function () {
    return index(this, 0);
    function index(e, i) {
        if (e.previousElementSibling === null) {
            return i;
        } else {
            return index(e.previousElementSibling, i + 1);
        }
    }
}

用的时候就跟jQuery差不多

element.index();
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号