Hallo,
ich habe zum Zeichnen bislang die Grafikbibliothek von Walter Zorn genommen. Für meine spezielle Anwendungen kann ich diese aber nicht benutzen, da ich spezielle Funktionen brauche. Also sitze ich nun hier und fange von vorne an. Bei einem Performancevergleich schneidet meine nun deutlich schlechter ab (Dafür brauche ich aber auch weniger Ebenen :-)). Mit Hauptursache für die schlechte Performance (Faktor 20) war folgdendes:
this.setPixel = function(divID,x,y,colour) {
var dv=document.createElement("div");
dv.style.background = colour;
dv.style.width="1px";
dv.style.height="1px";
dv.style.position="absolute";
dv.style.left=x;
dv.style.top=y;
dv.id=divID;
}
Ersetze ich die Funkion durch
this.setPixel = function(divID,x,y,colour) {
document.write("<div id='"+divID+"' style='position:absolute;background-color:"+colour+";top:"+y+"px;left:"+x+"px;width:1px;height:1px;'></div>");
}
so ist es deutlich schneller, wenn auch immer noch um den Faktor 4 bis 5 langsamer, was aber woh für die Ebenenoptimierung draufgeht. Vielleicht bekomme ich das aber noch runter.
Kann mir jetzt jemand sagen, warum write schneller ist. Ich dachte das ist langsamer. Hat sonst noch jemand eine Idee, wie es schnell geht?