84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
比如,我用getElementsByClassName()获取了5个标签,我又用this控制了其中第二个标签,如何获取this所指向标签在getElementsByClassName()数组中的位置?
ringa_lee
更正一个错误,getElementsByClassName() 拿到的结果并不是数组,而 HTMLCollection 对象。
const elements = Array.from(document.getElementsByClassName('.class-name')); // const elements = Array.prototype.slice.apply(document.getElementsByClassName('.class-name')); const that = elements[3]; console.log(elements.indexOf(that));
思路是将获取到的 HTMLCollection 对象转换为数组,再使用数组的 indexOf() 方法获取指定元素的索引。
可以设置this.index
`for(var i=0;i<elsEments.length;i++){ elsEments[i].index=i; }
this.index就是这个元素的下标`
更正一个错误,getElementsByClassName() 拿到的结果并不是数组,而 HTMLCollection 对象。
思路是将获取到的 HTMLCollection 对象转换为数组,再使用数组的 indexOf() 方法获取指定元素的索引。
可以设置this.index
this.index就是这个元素的下标
`