jQuery Mobile: Style für dynamisch generierten Content
Frage von Gast | 17.05.2015 um 19:23
Ich benutze jQuery Mobile für eine Web-App. Auf einigen Seiten lade ich dynamischen Inhalt nach, je nachdem welche Angaben ein Nutzer gemacht hat.
Das Problem bei diesem dynamischen Content ist allerdings, dass die jQuery Mobile Styles für die grafischen Elemente nicht angewendet werden. Das betrifft zum Beispiel Input-Boxen, Input-Select-Auswahlboxen aber auch die normale Listview oder das Collabsible Set.
Offenbar wird das Styling beim anfänglichen Laden der Seite vorgenommen und müsste nach dem dynamischen Laden wiederholt werden. Gibt es irgendeine Möglichkeit dieses Styling manuell anzustoßen?
Ähnliche Themen
Schriftarten für Windows, Linux und Mac im Web
Artikel | 0 Kommentare
Vater Unser in 20 anderen Sprachen
Info | 2 Kommentare
15 Tipps: So senken Sie den Beitrag für Ihre Kfz-Versicherung
Artikel | 0 Kommentare
Delphi/Lazarus: TabSheet auf PageControl dynamisch erzeugen
Tutorial | 0 Kommentare
PHP: Datei Download Skript
Tutorial | 0 Kommentare
jQuery: CSS Stylesheet Switcher
Tutorial | 1 Kommentar
JavaScript: Submit einer Form abfangen
Tutorial | 0 Kommentare
Wichtiger Hinweis
Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.
Jetzt mitmachen
Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.
Du kannst die Funktionen .trigger("create") oder .enhanceWithin() auf die neuen Elemente anwenden, um die Styles anzuwenden.
Wenn du dynamischen Content zum Beispiel in eine DIV-Box mit der ID "divid" geladen hast, ginge das so:
Damit würden alle Elemente in der DIV-Box "divid" neu gestylt werden. Die Funktion .trigger("create") tut im Grunde genommen das gleiche, wurde aber mit der Version jQuery Mobile 1.4 als veraltet gekennzeichnet, man sollte stattdessen also .enhanceWithin() benutzen.
Wenn man alles in einer Funktion haben möchte, geht es so:
Unser neuer Inhalt steht in der Variable newHTML. Wir fügen diesen Inhalt in die DIV-Box mit der ID "divid" hinzu und aktualisieren anschließend den Style.
Es ist auch möglich einzelne Elemente anzusprechen, zum Beispiel:
Mit der ersten Zeile können wir zum Beispiel das Menü einer Select-Auswahlbox aktualisieren wenn die neue Einträge hinzugefügt haben. Das Beispiel darunter aktualisiert alle Listviews und mit dem dritten Beispiel lassen sich alle Collapsible Sets der Klasse "myclass" aktualisieren.
18.05.2015 um 15:31