我有种感觉我滥用DOM我的代码...替代的innerHTML
for(var i=0; i<json.length; ++i){
var newobj = document.createElement("div");
var inner = "<img src='"+json[i].picture+"' alt='Item preview' class='icon' />";
inner += "<p>"+json[i].id+"<br />qty:"+json[i].qty;
inner += "<a href=\"javascript:clearProduct('"+json[i].id+"')\">";
inner += "<img alt='Seperator' src='images/form-sep.gif' />";
inner += "<img src='images/cross.png' alt='Remove this item.' title='Remove this item.' />";
inner += "</a></p>";
newobj.innerHTML = inner;
newobj.className = "cart_item";
$('cartitems').appendChild(newobj);
$('cartcount').innerHTML = json.length;
}
有没有更好的方式来做到这一点?我的意思是,是的,我可以通过并为每个元素使用createElement并单独设置每个属性,但当这非常简单时,看起来很多。有没有更好的办法?
您使用的是图书馆吗?或者是你自己的$函数? – 2009-06-28 07:38:40
我正在使用原型库。 – MackDaddy 2009-06-28 07:44:48
你不应该使用var来声明你的变量,将它们的作用域限制在循环中? – 2009-06-28 08:15:53