I need to find an index of element inside its container by object reference. Strangely, I cannot find an easy way. No jQuery please – only DOM.
UL
LI
LI
LI - my index is 2
LI
Yes, I could assign IDs to each element and loop through all nodes to match the ID but it seems a bad solution. Isn’t there something nicer?
So, say I have an object reference to the third LI as in the example above. How do I know it is index 2?
Thanks.
You could make usage of
Array.prototype.indexOf. For that, we need to somewhat “cast” theHTMLNodeCollectioninto a trueArray. For instance:Then we could just call:
Example: