我有以下代碼,它接受來自xml的輸入並創建一個無序列表。添加一個類到動態創建的列表元素
$(function() {
var map = function() {
if ($(this).is("parent")) {
var children = $(this).children().map(map).get().join('');
$(this).children().remove();
var result = "<li class='BGOfDiv'>" + $(this).text();
return result + "<ul>" + children + "</ul></li>";
}
if ($(this).is("Children")) {
return "<li class='BGOfDiv'>" + $(this).text() + "</li>";
}
};
$.get("test.xml", function(data) {
var result = $(data).map(map);
$("#org").html(result[0]);
$("#org").jOrgChart({
chartElement : '#chart',
dragAndDrop : false
});
dragNodes();
}, "html");
});
目前,我的XML看起來像這樣
<?xml version="1.0" encoding="utf-8"?>
<Parent>Director
<Children>Exe Director1</Children>
<Children>Exe Director2</Children>
<Parent>Exe Director3
<Children>Sub Director 1</Children>
<Children>Sub Director 2</Children>
<Parent>Sub Director 3
<Children>Cameraman 1</Children>
<Children>Cameraman 2</Children>
</Parent>
</Parent>
</Parent>
然而,XML將作出一定的保持圖像的,我需要申請爲每個node.That背景圖片的路徑我的XML看起來像
<?xml version="1.0" encoding="utf-8"?>
<Parent>../images/1.jpg
<Children>../images/2.jpg</Children>
<Children>../images/3.jpg</Children>
<Parent>../images/4.jpg
<Children>../images/5.jpg</Children>
<Children>../images/6.jpg</Children>
<Parent>../images/7.jpg
<Children>../images/8.jpg</Children>
<Children>../images/9.jpg</Children>
</Parent>
</Parent>
</Parent>
我明白,我將需要使用的jquery
的.css
屬性和設置background-image
當我創建的新<li>
元素,但我無法弄清楚如何做到這一點。
感謝您的期待。任何幫助將不勝感激。
這可能不是一個好主意,可以將您傳遞給'map','map'的回調函數命名。 – jbabey
@ jbabey:謝謝,會改變:) :) –