给定3个元素,返回具有给定类的元素的编号
Given 3 elements, return the number of the element with a given class
给一些像这样的HTML:
<a>foo</a>
<a class="active">bar</a>
<a>baz</a>
什么JavaScript将返回元素的编号与活动类?例如,如果这些是由像in: [].slice.call(document.getElementsByTagName('a'));
这样的数组返回的,我想返回数字1
,代表数组中的第二个元素。
这是我尝试过的,它只是不断返回1
和2
:
var tagCount = 0;
var tagArray = [].slice.call(document.getElementsByTagName('a'));
for (var a = 0; a < tagArray.length; a++) {
while (tagArray.className[a] !== "active") {
tagCount = tagCount + 1;
}
}
我不需要所有的a
标签,只是那些在另一个元素。
您可以将Array.prototype.indexOf.call
与querySelector
和querySelectorAll
结合使用:
var i = [].indexOf.call(document.querySelectorAll('a'), document.querySelector('a.active'));
console.log(i);
<a>foo</a>
<a class="active">bar</a>
<a>baz</a>
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 如何设置html元素填充的动画
- 获取元素的编号's视口内的像素
- 计算具有特定类的元素的数量,然后添加对它们进行编号的ID
- 在 ReactJs 中的文本区域元素内创建一个编号列表
- 使用 javascript 循环将文本编号到现有列表元素
- 下划线 JS - 重新编号模板呈现的元素属性
- 函数对数组元素进行编号输出“;未定义”;
- 索引编号的JavaScript克隆表单元素问题
- 获取单击的元素父节点的数组编号
- 给定3个元素,返回具有给定类的元素的编号
- 在纯JavaScript中获取元素的第n个子编号
- 给出元素id编号,然后在末尾插入一个
- jQuery为dom元素提供了唯一的编号
- 用数组的元素填充提示符,并给它们编号
- 如何获取数组元素编号
- 如何使用jQuery获取索引,特定类元素的位置编号
- 如何使用jQuery按类获取列表元素编号
- 选择编号大于50的所有元素项
- 使用JavaScript添加/删除元素(添加/删除带有编号id和名称的字段)