オブジェクトにいくつかの kineticJS 円を定義し、それらのオブジェクトのいくつかを作成して表示します。私が望むのは、ユーザーが表示された円から選択したものに基づいて XML オブジェクトを生成することです。
このために、特定の円をクリックしたときにオブジェクトで定義された変数値を設定し、object.property
一種の方法でそれを呼び出そうとしました。ただし、これは機能しません。
以下は、私が仕事に使用したコードの一部です。
function Graph(i, j, refRel, refRelTxt) {
subNodes = seventeen + eighteen + nineteen;
graphNode = "<" + refRelTxt + ">" + subNodes + "<" + refRelTxt + ">";
var layer = new Kinetic.Layer({
width: 200,
height: 100,
x: (stage.getWidth() / 2.5) + i,
y: (stage.getHeight() / 2.5) + j
});
var circle19 = new Kinetic.Circle({
x: 10,
y: layer.getHeight() / 2,
radius: cradius,
fill: '#CCCCCC'
});
//++++++++++++++++++++++++++++++++++++++++++++++++++
var circle18 = new Kinetic.Circle({
x: 10 + n,
y: (layer.getHeight() / 2) - m,
radius: cradius,
fill: '#CCCCCC'
});
var circle17 = new Kinetic.Circle({
x: 10 + n,
y: (layer.getHeight() / 2) + m,
radius: cradius,
fill: '#CCCCCC'
});
//============Mouse in/out operations
circle17.on('click', function (evt) {
this.setFill('#00FF00');
layer.draw();
seventeen = "<node>seventeen<node>";
});
circle18.on('click', function (evt) {
this.setFill('#00FF00');
layer.draw();
eighteen = "<node>eighteen<node>";
});
circle19.on('click', function (evt) {
this.setFill('#00FF00');
layer.draw();
nineteen = "<node>nineteen<node>";;
});
// add the shape to the layer
layer.add(circle19);
layer.add(circle18);
layer.add(circle17);
stage.add(layer);
}
次のようなグラフ オブジェクトを作成します。
var graph19 = new Graph(-(4*hdist), (0*vdist),"circle19","nineteen");
次に、値を呼び出してgraph19.graphNode
、ユーザーがクリックした円に基づいて xml を取得します。ただし、graph19.graphNode
動的に値を設定することはできません。私はここで私が理解できない何か間違ったことをしていることを知っています。グローバル変数を設定してこれを行うと、機能します。私が望むのは、作成されたさまざまなグラフ オブジェクトから xml を抽出することです。