Cześć, zrobiłem coś takiego i 3 pierwsze divy w divie orders-container są przenoszone na koniec a z góry usuwane, a jak zrobić żeby zostały te 3 divy a reszta się usunęła?
var orderscontainer = document.getElementById("orders-container"); orderscontainer.addEventListener("click", Show); elements = orderscontainer.children; var newelements = []; function Show() { for (var i=0; i<elements.length; i++) { if (i < 3) { newelements.push(elements[i]); } } for (var i=0; i<newelements.length; i++) { orderscontainer.appendChild(newelements[i]); } }
Przenosisz na koniec i pozostałe chcesz usunąć? To jaki ma sens w ogóle przenoszenie?
Jeśli chcesz usunąć wszystkie <div> poza pierwszymi trzema, to usuń elementy na podstawie selektora: n+4
[].forEach.call(orderscontainer.querySelectorAll('div:nth-child(n+4)'), function(el){ //tu usuń });
[].forEach.call(orderscontainer.querySelectorAll('div:nth-child(n+4)'), function(el){ //tu usuń });
Nie można pobrać właściwości „call” dla niezdefiniowanego lub pustego odwołania
elements.forEach.call(orderscontainer.querySelectorAll('div:nth-child(n+4)'), function(el){ orderscontainer.removeChild(el); });
Przepisz choć poprawnie podany kod.
Tak jak podałem.
Przecież użyłeś już metody removeChild.
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)