Ergebnis 1 bis 8 von 8
-
30-08-2014, 11:32 #1j-l-n Guest
Element direkt aus DOM entfernen
Wenn man ein Element aus dem DOM entfernen möchte, muss man immer erst den Weg über das Elternelement gehen.
Dies kann man zwar nicht umgehen, aber man kann sich eine praktische kleine Helferfunktion bauen:
Code:function deleteElementById(ID){ var el = document.getElementById(ID); el.parentElement.removeChild(el); } Object.defineProperty( Element.prototype, "remove", { enumerable: false, value: function(){ if (this.parentElement){ this.parentElement.removeChild(this); } else { throw new TypeError("Element is not in DOM."); } } } );
Code://<div id="ID"></div> deleteElementById("ID"); //var element = document.createElement("div"); //document.body.appendChild(element); element.remove();
Geändert von j-l-n (11-09-2014 um 14:00 Uhr) Grund: Verbesserungsvorschlag umgesetzt
-
30-08-2014, 19:20 #2
AW: Element direkt aus DOM entfernen
Du scheinst dir langsam eine eigene Lib zu bauen, was?
Das deutsche Javascript Forum http://forum.jswelt.de
-
30-08-2014, 20:23 #3j-l-n Guest
AW: Element direkt aus DOM entfernen
Nö, das nicht.
Aber für die Sachen die ich häufiger brauche, schreibe ich mir zurzeit einige Helferfunktionen - jQuery mag ich persönlich nicht, und da ich es selten nutze, lohnt es sich meist nicht, es extra nur für ein paar Sachen einzubinden.
Und ich möchte mich schon seit längerem in Korbinians kkjs einarbeiten - vielleicht find ich jetzt mal die Zeit dafür.
-
31-08-2014, 07:41 #4
-
31-08-2014, 15:07 #5rico2009 Guest
AW: Element direkt aus DOM entfernen
-
09-09-2014, 21:35 #6
AW: Element direkt aus DOM entfernen
Ich würde die Funktion ja nicht kill nennen, sondern remove. Das Element wird dabei ja nicht zerstört, sondern "nur" aus dem DOM ausgehängt. Zusätzlich wurde ich in der Funktion noch prüfen, ob this.parentNode auch wirklich etwas enhält und dann eine etwas aussagekräftigere Fehlermeldung als "TypeError: a.parentElement is null" ausgeben:
Code:Object.defineProperty( Element.prototype, "remove", { enumerable: false, value: function(){ if (this.parentElement){ this.parentElement.removeChild(this); } else { throw new TypeError("Element is not in DOM."); } } } );
Dazu müsste ich mir erst mal eine Lizenz aussuchen...
Warscheinlich wäre es sowas wie: Creative Commons — Attribution-ShareAlike 4.0 International — CC BY-SA 4.0
-
11-09-2014, 14:19 #7j-l-n Guest
AW: Element direkt aus DOM entfernen
Danke für den Hinweis, habe ich oben verbessert.
Ich hab mir jetzt mal die ganzen DOM-Sachen angeschaut, aber alles, was mir noch eingefallen wäre, hast du schon eingebaut
Dann ist mir noch die Idee eines Shim für querySelectorAll() gekommen, aber das wird entgegen meiner Erwartung in so gut wie allen Browsern unterstützt: Can I use... Support tables for HTML5, CSS3, etc
-
17-09-2014, 00:16 #8
AW: Element direkt aus DOM entfernen
In kkjs.css ist eine Selektorengine drin - aber die wollte ich schon lange mal überarbeiten...
Ähnliche Themen
-
Bestimmtes Hidden-Element senden per Form-Element!?
Von stargate im Forum JavaScriptAntworten: 11Letzter Beitrag: 05-03-2013, 19:45 -
Möchte ein Element entfernen "FancyZoom" + Wordpress
Von COPIC im Forum JavaScriptAntworten: 0Letzter Beitrag: 02-09-2008, 20:21 -
[CSS] element in anderem element absolut ausrichten
Von schwerminator im Forum CSS und (X)HTMLAntworten: 1Letzter Beitrag: 15-12-2004, 19:42 -
<Direkt x 9
Von Shaggy_23 im Forum WindowsAntworten: 4Letzter Beitrag: 09-08-2003, 09:21 -
Element aus Array entfernen...
Von frau moella im Forum Serverseitige ProgrammierungAntworten: 8Letzter Beitrag: 16-06-2002, 16:46
Lesezeichen