xharx: pic refreshen

Beitrag lesen

Ich benutze den Browser als Interface für ein Simulationsprogramm, das ich entwickle. Jetzt will ich grafische Ausgaben meiner Simulation im Browser darstellen. Die daten liegen zur Zeit als BMP- Datei vor. Wie kann ich den Browser im HTML- Code anweisen, dieses Bild jeweils neu zu laden? Der Weg, den ich bisher benutzt habe, mit Hilfe des Javascripts, funktioniert zwar irgendwie, allerdings gelingen damit nur langsame Refresh- Raten und die Anzeige flackert beim Udaten( der Browser lädt für kurze Zeit den Alternativtext der darzustellenden Grafik).

setInterval(getnews, 1000, "getarenapic");

wie kann ich eine solche Datei in der Geschwindigkeit des Bildschirm- refhesh (also zum Beispiel bei meiner Maschine ca 60 Hz) aktualisieren? Vielen Dank.

<html>
<head>
	<style> 
		table { border: 2px solid black; } 
		tr { border: 2px solid black; } 
		td { 
			border: 1px solid black; 
			vertical-align: top;
		} 
	</style>
	<style type="text/css">
		body { background-color: #d8d8a8; }
	</style>
	<script type="text/javascript">
		//https://de.wikibooks.org/wiki/Websiteentwicklung:_AJAX:_Erstes_Programm
		function getnews(idname){
			if (window.XMLHttpRequest){
				var myAjax = new XMLHttpRequest();
			}else{
				//Dieser Code wird als Fallback für den IE5 und IE6 benötigt, da diese die obrige Schreibweise nicht unterstützen.
				var myAjax = new ActiveXObject("Microsoft.XMLHTTP");
			}

			myAjax.onreadystatechange=function(){
				if (myAjax.readyState==4 && myAjax.status==200){
					document.getElementById(idname).innerHTML=myAjax.responseText;
				}
			};
			myAjax.open("GET", idname, true);
			myAjax.send();
		}
		//Benutzung: setInterval(getnews, interval, name des id- Feldes im body) benutzen, um regelmäßig im Interval abzudaten
		setInterval(getnews, 1000, "refreshdata");
		setInterval(getnews, 5000, "signaturen");
		setInterval(getnews, 1000, "getarenapic");
		//getnews(name des Feldes) benutzen, um Inhalt einmalig zu laden.
		//im server GET- Nachricht abfangen und Inhalt mittels send zurücksenden
		getnews("prefs");
		getnews("kosten");
		getnews("mutabor");
	</script>
</head>
<body>
	<h1>Welcome to EvoProgs!</h1>
	<p>Bad times for organisms on this planet. The age of programisms is about to come.<p/>
	<table>
		<tr>
			<td>
				<a href="ende">Progsramm beenden</a><br>
				<a href="arenazeigen">Arena zeigen</a><br>
				<a href="#">max</a><br>
				<a href="langsam">langsam</a><br>
			</td>
			<td id="prefs">prefs</td>
			<td id="kosten">kosten</td>
			<td id="mutabor">mutabor</td>
			<td rowspan="2" id="refreshdata">Daten werden vorbereitet...</>
			</td>
		</tr>
		<tr>
			<td id="getarenapic" colspan =4></td>
			</td>
		</tr>
		<tr>
			<td>
				<td colspan="3" id="signaturen">signaturen</td>
			</td>
			<td>
				bl6
			</td>
		</tr>
	</table>

</body>
</html>