Ben Javascript acemisiyim.
Web sayfasını aracılığıyla başlatıyorum window.onload
, sınıf adlarına ( slide
) göre bir dizi öğeyi bulmam ve bunları bir mantığa göre farklı düğümlere yeniden dağıtmam gerekiyor. Distribute(element)
Girdi olarak bir eleman alan ve dağıtımı yapan bir işleve sahibim . Bunun gibi bir şey yapmak istiyorum (örneğin burada veya burada ana hatlarıyla belirtildiği gibi ):
var slides = getElementsByClassName("slide");
for(var i = 0; i < slides.length; i++)
{
Distribute(slides[i]);
}
ancak bu benim için sihir yapmıyor, çünkü getElementsByClassName
aslında dizi döndürmüyor, ama a NodeList
, yani ...
... bu benim spekülasyonum ...
... işlev içinde değiştiriliyor Distribute
(DOM ağacı bu işlev içinde değiştiriliyor ve belirli düğümlerin klonlanması gerçekleşiyor). For-each
döngü yapısı da yardımcı olmuyor.
Değişken slaytlar, her yinelemede, uzunluğunu ve öğelerin sırasını çılgınca değiştirdiği için gerçekten belirsizdir.
Benim durumumda NodeList aracılığıyla yinelemenin doğru yolu nedir? Bazı geçici dizileri doldurmayı düşünüyordum ama bunu nasıl yapacağımdan emin değilim ...
DÜZENLE:
Bahsetmeyi unuttuğum önemli bir gerçek, diğerinin içinde bir slayt olabileceğidir, bu aslında slides
değişkeni değiştiren şey, Alohci kullanıcısı sayesinde yeni öğrendiğim gibi .
Benim için çözüm, her öğeyi önce bir diziye klonlamak ve diziyi tek tek Distribute()
daha sonra geçirmekti .