suit: Nachträglich erfasste Links dynamisch ansprechen?

Beitrag lesen

okay, das mit dem append habe ich eingesehen, dass scheint wirklich Quatsch zu sein.

Sag' ich doch :)

Allerdings geht es mir nicht um das "rendern" der Seite, sondern vielmehr um den Aufwand, der hinter dem Holen der Daten steckt. Klar geht es auch anders, aber die App (die Webanwendung sein muss), zieht sich Daten aus einem unternehmensinternen SAP-Server. Allein das ist schon langsam, dann aber den Request bei jedem Aufrufen der Seite neu zu starten, wäre ein zeitliches Problem. Oder irre ich mich da?

Ob du 1x am anfang "ganz lang" wartest oder mitten drin "öfter kurz" ist in Summe egal - und werden zwischendrin nicht aufgrund der Benutzerinteraktion verschiedene Daten benötigt? Was macht es dann für einen Sinn "pauschal" mal alles mögliche zu holen und die initale Ladezeit aufzublasen, wenn 90 % der Daten nicht benötigt werden?

Natürlich gibt es auch lösungen wo es sinnvoll ist alle Daten gleich zu laden, aber dann doch bitte nicht mit irgendwelchem Schmonz-Lösungen per Append herumwursteln.

Und wenn mein Ansatz wirklich so eine "Schwachsinnslösung" ist, bin ich für andere Vorschläge offen.

Entscheide dich ob es wirklich notwendig ist, alle Daten am Anfang laden zu müssen - wenn das wirklich notwendig ist, kommt es auf die Art der Daten an. Werden diese Dynamisch gefiltert, herumgewurstelt oder was auch immer oder sind es einzelne "Dokumente" die dann sind wie sie sind?

Für den Fall dass alles geladen wird un es einzelne Dokumente sind: mach einfach für jedes Unterdokument einen Abschnitt die du dann beim vorhandensein von JavaScript ausblendest, bis auf den ersten und beim Klicken eines Menüpunkts wird der betreffende Abschnitt eingeblendet und der Rest aus - keine unnötigen DOM-Operation, einfach und clean - geht auch ohne JavaScript und ist gut wartbar.

<nav>  
	<ul>  
		<li><a href="#page1">Seite 1</a></li>  
		<li><a href="#page1">Seite 2</a></li>  
		<li><a href="#page1">Seite 3</a></li>  
		<li><a href="#page1">Seite 4</a></li>  
		<li><a href="#page1">Seite 5</a></li>  
	</ul>  
</nav>  
  
<section id="page1"></section>  
<section id="page2"></section>  
<section id="page3"></section>  
<section id="page4"></section>  
<section id="page5"></section>

Wenn du dynamische Daten hast, ist es sinnvoll diese z.B. per XML oder JSON in einer Variable zu hinterlegen die du dann parsen kannst, eine Ausgabe erzeugst und diese an entsprechender Stelle ins DOM einfügst - oder eben einen Request an den Server stellen, so eine Logik in einer serverseitigen Sprache meistens wesentlich zeilführender ist als am Client, noch dazu wenn es ein Telefon ist.