bilder aus dem dom entfernen und laden abbrechen
Jochen
- javascript
Hallo,
Also Bilder enfernen oder ersetzen ist ja kein Problem. Doch nachdem ich mal ein bischen recherchiert habe, scheint es mir unmöglich zu sein, dann auch den Ladevorgang abzubrechen.
Stimmt das oder gibt es irgendeine Hintertür?
Der Hintergrund:
Ich will eine Slideshow bauen, die Suchmaschinen- und Ladezeitenoptimiert ist. Der User soll davon profitieren, wenn JS aktiviert ist.
Dazu soll das ganze noch mit (halbwegs) logischem Aufbau geschehen, so dass SuMas auch etwas damit anfangen können:
<dl>
<dt><img ...></dt>
<dd>Hier sieht man ein tolles Bild</dd>
<dt><img ...></dt>
<dd>Und noch eins</dd>
</dl>
Diese Liste wird dann via JS angepackt und daraus eine schicke Slideshow gemacht.
Wie gesagt, das Problem ist, dass so selbst bei aktiviertem JS alle Bilder auf einen Schlag geladen werden. Das muss ja nicht sein.
Also wenn jemand eine Idee hat, lasst es mich bitte wissen! Danke :)
Hallo Jochen,
<noscript>
<dl>
<dt><img ...></dt>
<dd>Hier sieht man ein tolles Bild</dd><dt><img ...></dt>
<dd>Und noch eins</dd>
</dl>
</noscript>
wäre das was für dich?
Gruß, Jürgen
Hallo Jürgen,
Hab ich auch schon drüber nachgedacht. Ich würde aber gerne auf noscript-Tags verzichten. (Ist nur so ein Gefühl, aber: ich glaube SuMa technisch ists besser ohne)
Hallo Jochen,
... Ich würde aber gerne auf noscript-Tags verzichten. (Ist nur so ein Gefühl, aber: ich glaube SuMa technisch ists besser ohne)
ob Deine Gefühle da richtig sind, weiß ich nicht. Ich habe davon noch nichts gehört und würde daher auch noscript nehmen. Schließlich ist es ja da, um Besucher ohne Javascript nicht im Regen stehen zu lassen. Aber vieleicht wissen da andere mehr drüber. Ich habe daher mal den Titel geändert,
Gruß, Jürgen
Hm, in Firefox habe ich mal versucht, per js auf eine Liste im <noscript>-Tag zuzugreifen -- ohne Erfolg.
Hallo Jochen,
also im FF hat es bei mir noch mit
document.getElementsByTagName('noscript')[0].innerHTML)
geklappt. Opera und IE sind aber der Meinung, das noscript sei leer. Offensichtlich ist in diesen Browsern das noscript, bzw. sein Inhalt nur in den DOM-Baum eingebunden, wenn eben kein JS eingeschaltet ist.
Meine Idee hat daher dir und mir nur die Zeit gestohlen. Tut mir leid.
Jetzt habe ich nur noch die Idee, im Noscript-Bereich die Galerie für Besucher ohne Javascript und im script-Bereich mit document.write die Galerie für User mit JS:
<script ...>
document.write("<img für JS-Galerie>)");
</script>
<noscript>
<img ohne JS>
</noscript>
Gruß, Jürgen
Hallo,
<dl>
<dt><img ...></dt>
<dd>Hier sieht man ein tolles Bild</dd><dt><img ...></dt>
<dd>Und noch eins</dd>
</dl>
Normalerweise gibts eine Trennung zwischen Thumbnail und Vollbild, unter der Voraussetzung ist es einfach, nachträglich an eine solche Struktur mit JavaScript zu gehen, weil nur die Thumbnails geladen werden.
Was du noch probieren kannst, ist es, beim DOMContentLoaded alle src-Attribute der Bilder zu löschen (Adressen natürlich in einer Objekteigenschaft sichern) und schauen, ob der Browser trotzdem weiterlädt (vielleicht tut er es bei manchen am Anfang, was ja nicht so schlimm wäre).
Mathias