Ich habe zwei divs wie unten gezeigt:indexOf() Funktion arbeiten nicht auf Arrays
<div class="container"></div>
<div class="container"></div>
I erzeugt ein Array mit diesen beiden divs:
var containers = document.querySelectorAll(".container");
Ich habe auch eine Variable die darstellen erster div:
var div1 = document.querySelectorAll(".container")[0];
Wenn ich indexOf()
den Index des ersten div in der Anordnung zu bekommen, erhalte ich eine Fehler:
containers.indexOf is not a function
Hier ist ein Ausschnitt einer Zusammenfassung mein Problem:
var containers = document.querySelectorAll(".container");
var div1 = document.querySelectorAll(".container")[0];
containers.indexOf(div1); // returns the error
<div class="container"></div>
<div class="container"></div>
'querySelectorAll' a * NodeList * gibt, kein Array. Sie können die NodeList in ein Array konvertieren, indem Sie 'Array.from (...)' aufrufen. –
'querySelectorAll' gibt eine' NodeList' zurück, die keine 'indexOf' Methode hat. – Li357
Sie können jedoch 'Array.prototype.indexOf.call (containers, div1)'. – RobG