Hi nochmals,
Ich wollte wissen, welche Methode schneller HTML Elemente erzeugt.
In der linken Ecke :
Die Herausvorderer "createElement()" - "appendChild()"
In der rechten Ecke:
Die Titelverteidiger "document.write()" - "Str +="
der Code :
<html>
<head>
<title>createElement() vs. document.write() </title>
<script type="text/javascript" >
function _main_(){
var a = 50; var b = 150;
alert ("NODE");
var start1 = new Date();
node(a,b); // createElement()
var end1 = new Date();
alert ("HTML");
var start2 = new Date();
write(a,b); // document.write()
var end2 = new Date();
alert ("createElement()\t:" + (end1 - start1) + "\n" + "document.write()\t:" + (end2 - start2));
}
function node(a,b) {
var A_Tag = document.createElement("div");
A_Tag.style.width = 500;
A_Tag.style.border = "solid red 1px";
for ( var n = 0 ; n < a ; n++ ) {
var B_Tag = document.createElement("div");
A_Tag.appendChild(B_Tag);
for ( var i = 0 ; i < b ; i++ ) {
var C_Tag = document.createElement("span");
var C_Txt = document.createTextNode(i + "-" + n);
C_Tag.Id = "sp" + i + "-" + n;
C_Tag.appendChild(C_Txt);
B_Tag.appendChild(C_Tag);
}
}
document.getElementById("bench_1").appendChild(A_Tag);
/* delete A_Tag;
delete B_Tag;
delete C_Tag;
delete C_Txt; */
}
function write(a,b) {
var A_Str = "<div style='width:500; border:solid red 1px ;' >";
for ( var n = 0 ; n < a ; n++ ) {
A_Str += "<div>";
for ( var i = 0 ; i < b ; i++ ) {
A_Str +="<span id='sp" + i + "-" + n + "' >" + i + "-" + n + "</span>";
}
A_Str +="</div>";
}
A_Str += "</div>";
document.write (A_Str);
delete A_Str
}
</script>
</head>
<body>
<span id="bench_1" ></span>
<span id="bench_2" >
<script type="text/javascript" >
_main_();
</script>
</span>
</body>
</html>
Kommentare Bitte