だから私は6種類の記号を持つ紙を持っています。各シンボルは、円とパスのコレクションです。一部の円をクリックしてセットをドラッグできるようにしたいだけです。たとえば、シンボルに 2 つの円と 1 つのパスがある場合、円の 1 つをクリックしてセットをドラッグ アンド ドロップできるようにしたい (十分に文書化されているもの)。ユーザーが他の円をクリックしても、何も起こりません。私の Raphael 要素はユーザーによって動的に作成されるため、作成された各セットを配列にプッシュします。セット内の特定の円にアクセスして、セットの配列からクリックできるようにすることはできますか?
セットを挿入する方法は次のとおりです
{
paper.setStart();
var circ = paper.circle(x,y,35); //first circle - should be clickable
var conpoints = insConPoint1(paper,x,y);
var pathright = conpoints.path;
var conPoint1 = conpoints.conpoint; //this is a second circle - should not be clickable
var st = paper.setFinish();
symbolarray.push(st);
}
また、セットをドラッグ可能にする方法は次のとおりです
function dragger(){
this.dx = this.dy = 0;
};
function mover(s){
return function(dx, dy){
(s|| this).translate(dx-this.dx, dy-this.dy);
this.dx = dx;
this.dy = dy;
}
};
for(var i = 0; i<symbolcount;i++){
symbolarray[i].drag(mover(symbolarray[i]), dragger);
}