Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: AJAX - Div erst nach laden anzeigen

  1. #1
    Unregistriert
    Gast

    Standard AJAX - Div erst nach laden anzeigen

    Hallihallo,

    aaaaalso ich hab da mal ne Frage:
    Und zwar hab ich auf meiner Seite rechts am Rand ein DIV, in dem 3 zufällige Bilder angezeigt werden. Ich habe es schon so hinbekommen, dass bei klick auf einen link 3 Neue angezeigt werden bzw. die letzten 3...
    Jetzt hätte ich es aber gerne so, dass wenn ich den link anklicke sofort ein ladebalken oder eine Uhr oder sonstiges im DIV angezeigt wird und die neuen Bilder im Hintegrund geladen werden und dann erst angezeigt werden...
    Ich muss dazu sagen, dass ich AJAX kaum beherrsche...
    Codeschnipsel zusammenbauen und verändern bekomme ich wohl hin, aber vom Grundprinzip her alles alleine coden schaffe ich defintiv nicht^^
    Wäre cool, wenn mir da einer helfen kann =)
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: AJAX - Div erst nach laden anzeigen

    also ich hab auch keinen plan von ajax, aber schreib dir doch nen javascript, was am ende der page aufgerufen wird.
    brauchste vorher nur das div auf display:none oder visibility:hidden setzen und im javascript schalteste den style um auf display:block; oder display: inline oder visibility:visible;

    ich würd da die visibility nehmen, is am einfachsten
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  3. #3
    Unregistriert
    Gast

    Standard AW: AJAX - Div erst nach laden anzeigen

    Hmmmmmm

    ja gut, nur krieg ich das schon nich hin
    Wie gesagt, ich kann zwar verändern und zusammenfügen, aber komplett selber schreiben is bei JS echt nich mein Ding ^^
    Ich werds aber mal so probieren, danke =)

  4. #4
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: AJAX - Div erst nach laden anzeigen

    die funktion würd dann so aussehen:
    Code:
    function setVisible(obj){
    var target = document.getElementById(obj);
    target.style.visibility="visible";
    }
    des schreibste in den head der seite und ganz unten kurz vor ende des bodys
    machste nochma nen script-tag wo du die funktion aufrufst und die ID des divs übergibst, das sichtbar werden soll

    natürlich könntest du das auch hart verdrahtet auf das eine div zurechtbiegen und nur einmal am ende die funktion aufrufen, aber so kanste die funktion auch für andere sachen verwenden und brauchst nur noch beim aufruf die id ändern, ohne noch ne neue funktion zu coden
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  5. #5
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: AJAX - Div erst nach laden anzeigen

    Such mal nach onReadyStateChange
    Wenn da eine 4 ist, weißt du, dass geladen worden ist und kannst wieder sichtbar machen.

  6. #6
    Unregistriert
    Gast

    Standard AW: AJAX - Div erst nach laden anzeigen

    Ich danke euch erstmal für die schnelle Antwort, ich glaube aber schon fast, dass ich mir da eine unmögliche Aufgabe gestellt habe...
    Und zwar dauert der Aufbau des DIVs so lange, weil ich da ne SQL Abfrage durchführe, die die Maße der Bilder ausliest und diese Daten dann so verarbeitet, dass der Abstand der Bilder passt...
    Also innerhalb des DIVs hab ich noch 3 weitere DIVs und diese werden mithilfe der Daten der SQL Abfrage dynamisch konfiguriert...
    Jetzt habe ich einfach mal Testweise ganz am Anfang der Seite sein Test-DIV mit bloß einer Textzeile definiert, dass genau über dem DIV mit den Bildern liegt. Trotzdem wird dieses erst nach sehr langer Wartezeit angezeigt.
    Sehe ich das richtig, dass ich dem Script sagen muss: Gib erst das DIV mit Ladebalken aus, und machen dann die SQL Abfrage und schreibe dann einfach ein anderes DIV über das Ladebalken-DIV ?!?! Und wenn ja, wie mache ich das?!?!

    Irgendwie bin ich mit dem Problem leicht überfordert, würde das aber sehr gerne einbauen^^

    Grüße
    Michael

  7. #7
    der/die Göttliche Avatar von jojo87
    Registriert seit
    23.03.2007
    Ort
    Leipzig
    Alter
    30
    Beiträge
    3.131
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: AJAX - Div erst nach laden anzeigen

    Meiner, du verstehst das ein bissel falsch
    Deinen Code veränderst du nicht, es werden auch keine weiteren divs eingefügt oder Ähnliches.
    Alles, was du machst, ist das div "unsichtbar" zu machen. Dies erreichst du durch die css-eigenschaft
    Code:
    #id-des-divs {
    visibility: hidden;
    }
    im Stylesheet.
    Im Head deiner Seite, also zwischen <head> und </head>, fügst du dann Synaptics Funktion ein. Das ist nötig, um sie zu definieren und auf deiner Seite nutzbar zu machen.
    Diese Funktion rufst du dann ganz am Ende deiner Seite wie folgt auf:
    Code:
    <script type="text/javascript" rel="javascript">
    setVisible("id-des-divs");
    </script>
    Diesen Code setzt du direkt vor </body> deines Dokuments.

    Was erreichst du damit:
    Deine SQL-Abfrage wird wie gewohnt ausgeführt. Allerdings wurde das div auf unsichtbar gesetzt, so dass der User davon nichts sieht. Wenn der Parser des Webserves dann das Ende deines Dokuments erreicht, ruft er die javascript-Funktion auf und das div wird wieder sichtbar. Eine Webseite wird linear geladen, so dass die Bilder alle geladen sind, wenn der Parser das Javascript erreicht. Damit vermeidest du, dass der User die nicht fertig geladenen Bilder zu Gesicht bekommt.
    Einen Ladebalken bekommst du so nicht, dass wäre wirklich am besten per Ajax zu lösen, aber auch etwas aufwendiger als dieser kleinen JS-Trick

    Hoffe, du verstehst es nun.
    Gruß,
    Jojo

  8. #8
    Unregistriert
    Gast

    Standard AW: AJAX - Div erst nach laden anzeigen

    Hmmmm ja versteh ich schon, auch wenn vielleicht nicht zu 100%^^
    Aber ich habe ja auch nicht das Problem, dass halbfertige Bilder angezeigt werden...
    Ich habe 3 Bilder fertig geladen und dann klicke ich auf einen link, der neue generiert...
    Diese werden mithilfe von AJAX in das DIV geladen... während des Ladevorgangs sieht der User noch die alten Bilder und die neuen werden nach einigen Sekunden direkt voll angezigt...
    Für diese Zwischenzeit hätte ich aber gerne einen Ladebalken.
    Das mit dem body und head etc. kann ich so wie ich das sehe gar nicht einbauen, da in der Datei aus der ich den DIV neu lade weder body noch head tags sind. Die sind ja in der "Mutter"datei, in der sich das per AJAX zu verändernde DIV befindet.
    Müsste ich dann dort deinen Code einflächten ( unabhängig davon, dass das ja eigentlich nicht das ist was ich möchte )?
    Möcht nur wissen ob ichs kapiert hab

    Noch interessanter als ein Ladebalken wäre natürlich noch ein flüssiger Übergang der Bilder...
    So, dass sich die 3 neuen Bilder von unten oder oben hereinschieben, aber da hab ich noch weniger eine Ahnung von wie ich das anstellen soll

  9. #9
    Unregistriert
    Gast

    Standard AW: AJAX - Div erst nach laden anzeigen

    Ich sollte vielleicht dazu sagen, dass das was so lange dauert nicht das Laden der Bilder selber ist, sondern das auslesen der Höhe und Breite und das darauf folgende Anpassen der gennanten Attribute und dass die Funktion so geschrieben ist, dass alle 3 Bilder und die entsprechenden Daten per array übergeben werden.
    Ich habe folgenden code:
    $daten = funktionsname(attr1,attr2,attr3,attr4,attr5,);
    Innerhalb der Funktion habe ich einige for und do Schleifen, die etwas länger dauern und verschachtelt sind + noch das auslesen von Höhe und Breite.
    Alle Daten werden gespeichert und per array übergeben und der Variable $daten zugeordnet...

    Vielleicht hat ja jetzt einer einen Gedankenblitz =)

  10. #10
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: AJAX - Div erst nach laden anzeigen

    Was möchtest du denn?
    Du lädtst ene PHP-Seite in einen Div und möchtest bis dahin den Div unsichtbar haben? Oder ein Rädchen, das sich dreht?
    In beiden Fällen:
    onReadyStateChange

Ähnliche Themen

  1. MARQUEE: Bilder werden erst beim 2. Laden sichtbar?
    Von captainnash im Forum HTML & CSS Forum
    Antworten: 10
    Letzter Beitrag: 12.02.2008, 01:06
  2. Bild soll erst nach 30 sek erscheinen
    Von badmaxx im Forum HTML & CSS Forum
    Antworten: 9
    Letzter Beitrag: 09.02.2007, 09:23
  3. Links direkt aufrufen und nicht erst URL anzeigen
    Von NickelbackROXXX im Forum Zope & Plone - das deutsche Hilfeforum
    Antworten: 1
    Letzter Beitrag: 10.01.2007, 10:43
  4. Hompage nach up. erst nach Aktualisieren auf dem Laufenden
    Von mad-byte im Forum HTML & CSS Forum
    Antworten: 4
    Letzter Beitrag: 06.01.2007, 12:25
  5. erst nach 2 versuchen
    Von Mir nicht im Forum Forum-Hilfe.de intern
    Antworten: 3
    Letzter Beitrag: 02.12.2005, 16:31

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •