Event-Delegation habe ich (hoffentlich) überall wo möglich eingebaut. Es gibt aber leider Dinge die funktionieren nur bei ready(). Da gibt es z.B. ein Slider Framework. Das baut nach dem ready() tolle Pfeile, damit man was zum drücken hat. Oder das Chosen Ding, was Tim hier im forum mal ausgegraben hat. Das baut eine Selectbox in eine "suchbox" um. Funktioniert auch nur bei ready().
Du vermischt hier zwei Paradigmen, klassische HTML-Dokumente mit JavaScript, das beim DOM-ready aktiv wird, und Single-Page-Verhalten. Wenn deine Site zu letzterem tendiert, solltest du entsprechende Frameworks und Architekturen verwenden.
Da hast du recht. Den Begriff Single-Page höre ich jetzt auch zum ersten mal.
Generell stell ich mir das relativ einfach vor: Der User klickt auf einen Link. Hat er kein JS aktiv wird der Link normal geladen. Ist JS aktiv wird die gewünschte Seite per Ajax aufgerufen. Auf der Serverseite läuft alles wie gehabt ab. Datenbank wird geladen, Templates werden geladen die Seite wird zusammen gebaut. Anstatt jetzt aber wirklich alles (z.B. header und Menü) zurück zu liefern, gibt der Server nur einen bestimmte HTML Ebene zurück. Bei mir wäre das <main>...</main>. Das JS ersetzt (oder erweitert) den bestehenden main Knoten.
Hab schon den Ansatz gesehen das anstatt des kompletten HTML nur ein Objekt zurück gegeben wird. Das wird dann auf JS Seite geparst. Das gefällt Google halt nicht ganz so gut, könnte ich mir vorstellen. Hab von einem Bekannten auch schon negative Erfahrung diesbezüglich gehört - mehr aber auch nicht.
Das Single-Page verhalten soll nicht das zentrale Merkmal der Seite werden. Ich möchte eventuell Effekte einbauen (Fading) um so die subjektive Warten des Users abzukürzen. Wenn es zu aufwendig wird mit dem Single-Page verhalten lasse ich es einfach.
Aber wie gesagt aktuell stelle ich mir das naiv einfach vor. Bin aber für eine Belehrung offen.
Gruß
offener
T-Rex