Hallo!
Ich habe in meinem JS ein Object (box_onject), welches in etwa so aussieht:
({ id:"3",
text:"this is a box object",
connection_parent:["1", "2"],
connection_child:["5", "6"],
connectiondata_child:{
0:{id:"5", linepoint:"bottom"},
1:{id:"6", linepoint:"bottom"}},
connectiondata_parent:{
0:{id:"1", linepoint:"top"},
1:{id:"2", linepoint:"top"}}
})
Das habe ich jetzt natürlich nur leserlicher geschrieben. So schaut box_object.toSource()
aus:
({id:"3", text:"this is third box", connection_parent:["1", "2"], connection_child:["5", "6"], connectiondata_child:{0:{id:"5", linepoint:"bottom"}, 1:{id:"6", linepoint:"bottom"}}, connectiondata_parent:{0:{id:"1", linepoint:"top"}, 1:{id:"2", linepoint:"top"}}})
Das stimmt soweit auch alles. Nun will ich in mein box_object.connectiondata_parent noch Positionswerte mitgeben.
Ich benutze jQuery, also habe ich es mit der .each() Methode versucht:
$(box_object.connectiondata_parent).each(function(it, obj){
if(typeof(obj[it]) != "undefined" && obj[it].linepoint == "top"){
var point_position_top = new Object();
point_position_top.left = startingpoint_left;
point_position_top.top = startingpoint_top;
obj[it].position = point_position_top;
}else if(typeof(obj[it]) != "undefined" && obj[it].linepoint == "bottom"){
var point_position_bottom = new Object();
point_position_bottom.left = startingpoint_left;
point_position_bottom.top = startingpoint_bottom;
obj[it].position = point_position_bottom;
}else{}
});
Doch hier scheine ich einen Fehler zu haben. Er schreibt mir die Werte nur in das erste Objekt, so dass ich nach durchlaufen der Funktion folgendes erhalte:
({ id:"3",
text:"this is third box",
connection_parent:["1", "2"],
connection_child:["5", "6"],
connectiondata_child:{
0:{id:"5", linepoint:"bottom"},
1:{id:"6", linepoint:"bottom"}},
connectiondata_parent:{
0:{id:"1", linepoint:"top", position:{left:500, top:104}},
1:{id:"2", linepoint:"top"}}
})
Könnt ihr mir sagen wo mein Fehler liegt?