AJAX interval

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • AJAX interval

    ich bin grad dabei die grundprinzipien von AJAX zu lernen, hab mir merere tuts durchgelesen und immer wieder festgestellt das

    im code ein

    setInterval();

    drin ist, dies ist jedoch dumm wenn zb, eine grafik acktualiesiert werden soll, diese flackert bei jeden intervall einmal kurz auf...

    hat wer eine lösung wie man das bild neu laden kann ohne intervall?


    hier mein DIV:

    Code:
    <div id="sig_container">
    	 <div id="sig_vorschau_wrap">
    	 	<div id="sig_vorschau">
    		</div>
    	 </div>
    	<div id="sig_input">
    		<table>
    			<form method="post" name="form_background" 
    onsubmit="saveData();return false;">
        			<tr>
    					<td>
    						<select type="text" class="text" 
    name="background_dropdown">
    			    			<? echo $background_ausgabe; ?>
    						</select>
    					</td>
    				</tr>
    				<tr>
    					<td>
    						<input class="button" type="submit" 
    name="form_sig_send" value="Vorschau Erstellen" />
    					</td>
    				</tr>
       			</form>
    		</table>
      	</div>
    </div>
    und mein java loadData und saveData

    Code:
    loadData();
    
    setInterval("loadData()",1000);
    
    
    function loadData()
    {
     if (xmlHttp) {
         xmlHttp.open('POST', 'getpic.php', true);
         xmlHttp.onreadystatechange = function () {
             if (xmlHttp.readyState == 4) {
                 document.getElementById("sig_vorschau").innerHTML = 
    xmlHttp.responseText;
             }
         };
         xmlHttp.send(null);
     }
    }
    
    function saveData()
    {
    	if (xmlHttp) {
    	    xmlHttp.open('POST', 'setpic.php');
    	    xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    	    xmlHttp.send('background='
    +document.form_background.background_dropdown.value);
    	}
    }
    ich möchte erwähnen das das script aus einem tutorial abgeschrieben ist und ich es halt an meine bedürfnisse anpassen wollte

    mfg
    Syli


    edit umgebrochen
    Zuletzt geändert von Syli; 22.07.2007, 12:22.

  • #2
    1. Sogar ich muss nach rechts scrollen :-/
    2. Wenn setInterval dein Problem ist, so ist Ajax nicht dein Problem
    und 3. http://de.selfhtml.org/javascript/ob...m#set_interval

    Selbst wenn du gegooglet hättest wärst du darüber "gestolpert"

    P.S.: Nich bös' gemeint

    Kommentar


    • #3
      Code umbrechen und Regeln lesen!
      Wenn du verhindern willst, dass das Bild flackert musst du die PHP Datei so umstellen das sie nur den Pfad zum Bild liefert, ein neues img-Objekt erstellen und dieses einblenden wenn es im Hintergrund fertig dargestellt ist.
      Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

      Kommentar


      • #4
        Original geschrieben von Everdream
        1. Sogar ich muss nach rechts scrollen :-/
        2. Wenn setInterval dein Problem ist, so ist Ajax nicht dein Problem
        und 3. http://de.selfhtml.org/javascript/ob...m#set_interval

        Selbst wenn du gegooglet hättest wärst du darüber "gestolpert"

        P.S.: Nich bös' gemeint
        leider hatte ich das schon ausprobiert, geht nur leider nicht, bzw nur bei einem seiten reload


        Original geschrieben von tontechniker

        Wenn du verhindern willst, dass das Bild flackert musst du die PHP Datei so umstellen das sie nur den Pfad zum Bild liefert, ein neues img-Objekt erstellen und dieses einblenden wenn es im Hintergrund fertig dargestellt ist.
        danke das hab ich gebraucht

        Kommentar

        Lädt...
        X