Diese stammt tatsächlich aus Firefox
... IE
war einmal voraus und erlaubte das direkte Entfernen eines Elements.
Das ist nur meine Vermutung, aber ich glaube, der Grund, warum du ein Kind über das Elternelement entfernen musst, liegt an einem Problem mit der Art und Weise, wie Firefox
die Referenz behandelt hat.
Wenn du ein Objekt direkt dazu aufforderst, Harakiri zu begehen, dann hältst du unmittelbar nach seinem Tod immer noch auf die Referenz dazu. Dies birgt das Potenzial, mehrere unangenehme Fehler zu erzeugen... wie das Nichtentfernen, das Entfernen, aber das Beibehalten von als gültig erscheinenden Referenzen oder einfach ein Speicherleck.
Ich glaube, als sie das Problem erkannten, war der Workaround, ein Element durch sein Elternelement zu entfernen, denn wenn das Element weg ist, hältst du nur noch eine Referenz zum Elternelement. Das würde all das Unangenehme stoppen und (beim Schließen eines Baumknotens beispielsweise) würde sich das 'zip-up'
recht schön machen.
Es sollte ein leicht behebbarer Fehler sein, aber wie bei vielen anderen Dingen in der Webprogrammierung wurde die Veröffentlichung wahrscheinlich überstürzt durchgeführt, was zu diesem... und bis zur nächsten Version nutzen es bereits genug Leute, sodass eine Änderung zu einem Bruchteil des Codes führen würde.
Auch hierbei handelt es sich einfach um meine Spekulationen.
Dennoch freue ich mich auf den Tag, an dem die Webprogrammierung endlich eine gründliche Frühjahrsputz erhält, all diese seltsamen kleinen Eigenheiten beseitigt werden und jeder nach den gleichen Regeln spielt.
Vielleicht am Tag nachdem mein Roboterdiener mich auf rückständige Löhne verklagt.