Açıklama: BOB'un geliştiricisiyim.
Bu işlemi çok daha kolay hale getiren BOB adı verilen bir javascript kütüphanesi var .
Size özel örnek için:
<div><img src="the url" />the name</div>
Bu, aşağıdaki kodla BOB ile oluşturulabilir.
new BOB("div").insert("img",{"src":"the url"}).up().content("the name").toString()
//=> "<div><img src="the url" />the name</div>"
Veya daha kısa sözdizimiyle
new BOB("div").i("img",{"src":"the url"}).up().co("the name").s()
//=> "<div><img src="the url" />the name</div>"
Bu kütüphane oldukça güçlüdür ve veri ekleme (d3'e benzer) ile çok karmaşık yapılar oluşturmak için kullanılabilir, örn .:
data = [1,2,3,4,5,6,7]
new BOB("div").i("ul#count").do(data).i("li.number").co(BOB.d).up().up().a("a",{"href": "www.google.com"}).s()
//=> "<div><ul id="count"><li class="number">1</li><li class="number">2</li><li class="number">3</li><li class="number">4</li><li class="number">5</li><li class="number">6</li><li class="number">7</li></ul></div><a href="www.google.com"></a>"
BOB şu anda verilerin DOM'a enjekte edilmesini desteklemiyor. Bu todolist'te. Şimdilik, çıktıyı normal JS veya jQuery ile birlikte kullanabilir ve istediğiniz yere koyabilirsiniz.
document.getElementById("parent").innerHTML = new BOB("div").insert("img",{"src":"the url"}).up().content("the name").s();
//Or jquery:
$("#parent").append(new BOB("div").insert("img",{"src":"the url"}).up().content("the name").s());
Bu kütüphaneyi jquery ve d3 gibi alternatiflerin hiçbirinden memnun olmadığım için yaptım. Kod çok karmaşık ve okunması zor. BOB ile çalışmak bence, açıkçası önyargılı, çok daha keyifli.
BOB geçerli Bower çalıştırmakta bunu alabilmesi için, bower install BOB
.