Span-Elemente erstellen und löschen
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
all
bisherigen versuche
code
dokument
dom
eigenschaft
eingebunden danke
element
erstellen
erstellten span
fehl
festlegen
funktionieren
inhalt
klasse bekommen
span
stehen
teil
variable anzahl
zweck
-
Ich möchte mit JS eine variable Anzahl an Span-Elementen für einen Zweck erstellen und vorher die alten löschen. Aber nur die mit diesem einen Zweck. Die, die für diesen Zweck bestimmt sind, gehören alle einer gemeinsamen CSS-Klasse an, also diese muss dann beim Erstellen der Span-Elemente auch auf die neu erstellten Span-Elemente angewandt werden. Andere Elemente im verwendeten HTML-Dokument verwenden diese Klasse nicht.
Zusätzlich zu den CSS-Eigenschaften, die die Span-Elemente durch die CSS-Klasse bekommen, muss ich bei allen noch top und left festlegen. Diese Eigenschaften sind bei all diesen Span-Elementen anders.
Leider schlugen meine bisherigen Versuche fehl. Ich denke aber, dass es einfacher würde, wenn man die ganzen Span-Elemente nicht gleich in den document-Teil stecken würde, sondern in ein DOM-Element, in dem sich nur diese Span-Elemente befinden. Das habe ich auch schon selbst versucht, aber leider schlug das auch fehl. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo!
Ich würde dir jQuery dafür empfehlen, da geht das relativ easy:
Zum Löschen:
$("span.spezielleKlasse").each(function() { $(this).remove(); });
und zum Einfügen:
$("<span/>") .appendTo("body") .addClass("spezielleKlasse") .css({ top: 123px, left: 456px });
Für mehrere neue span-Elemente einfach in eine Schleife packen.
Ich hoffe, das trifft das, was du geplant hattest.
Lg
Edit:
Fehler in obigem Code müssten die fehlenden Anführungszeichen bei den Pixelangaben sein.
Beitrag zuletzt geändert: 20.8.2011 20:38:38 von markus-niederbrucker -
Man kann auch so schreiben, ja:
$("<span/>") .appendTo("body") .addClass("spezielleKlasse") .css("top", "123px") .css("left", "456px");
Für den Inhalt kann man noch ein
hinzufügen..append("Inhalt")
Sollte eigentlich funktionieren.
jQuery-Bibliothek hast du eingebunden? -
Danke ! So funktioniert es .
-
Bitte gerne!
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage