ole: dreh mich im kreis...bild cachen, timeout

Beitrag lesen

hi

Hmmm warum genau nach einer Sekunde??? Verstehe den Sinn nicht ganz.

eine sekunde draum, weil javascript zu schnell ist für coldfusion, welches mir den link für das bild übergibt

punkt 2 macht mir weniger sorgen, nur punkt 1 bereitet mir kopfzerbrechen. ich hab das schon mit settimeout probiert, allerdings mit dem ergebniss, das mir dann nur meine werte angezeigt wurden ohne den rest des seiteninhalts :(.

Wann ??? welche Werte ??? Hoehe und Breite ???

genau, die beiden werte brauche ich um eine textarea anzupassen, bekomme ich aber nicht auf einfachem wege, weil sonst das javascript ausgeführt wird bevor coldfusion die session-variable übergeben hat und ich somit nur 0 als wert bekomme.

Jo über den cache !! aber dein genaues Problem verstehe ich nicht. Sag doch mal einfach was du erreichen willst.

ich will erreichen, das das bild schon vorhanden ist wenn ich die breite und hoehe des bildes auslesen will und immo scheitert es an meinem mangelden JS wissen (und der mangelnden geschwindigkeit von CF) wie ich das realisieren kann.
also habe ich mir gedacht, das ich das bild vorlade (auf einer eigenen seite) bevor ich auf die eigentliche seite springe auf der die werte ausgegeben werden sollen, oder aber die bilder auf der eigentlichen seite vorlade, eine zeitlang warte und dann erst den rest der seite angezeigt bekomme, inkl. der werte für breite und höhe.

mein ansatz war folgendes:

<cfoutput>
<script language="javascript">
bilda = new Image();
bilda.src = "../_upload/images/#session.bild1#";
bildb = new Image();
bildb.src = "../_upload/images/#session.bild2#";

document.write("<img src='" + bilda.src + "' name='bild1'>");
document.write(document.bild1.width);
</script>
</cfoutput>

das scheiterte aber daran das coldfusion langsamer als JS ist und somit die variabel nicht übergeben war als das script die werte auslesen wollte.

der 2te versuch war folgender:

<cfoutput>
<script language="javascript">
function.warten()
{
bilda = new Image();
bilda.src = "../_upload/images/#session.bild1#";
bildb = new Image();
bildb.src = "../_upload/images/#session.bild2#";

document.write("<img src='" + bilda.src + "' name='bild1'>");
};

settimeout("warten();",1000);

document.write(document.bild1.width);
</script>
</cfoutput>

(oder so ähnlich, das fertige script hab ich leider gefrustet gelöscht *grummel*)

was dazu führte das ich zwar die richtigen werte angezeigt bekommen habe, allerdings nur diese werte, fein säuberlich auf weissem grund oben links in der ecke.

dann habe ich versucht die bilder via eines body onload vorzuladen, was mangels schlaf und JS-verständniss nicht funktionierte, da ich mir überlegt hatte, das die zeit vom starten der seite bis zum ausführen des scripts vieleicht reichen würde...ich hab mich geirrt.

und nun würd ichs gerne auf die oben geschilderte methode ausprobieren, damit dem script auf der ausführenden seite (der auf der die werte ausgelesen werden sollen) schon die bilder bekannt sind.

hoffe ich hab nicht allzuviel unverständliches zeug geschrieben :)

alles liebe
ole
(8-)>

ps: für das andere posting möchte ich mich entschuldigen, bin auf RETURN gekommen.