プログラムに問題があります。レイヤーのDraggableをfalseに設定したい。しかし、私はそれを設定する方法がわかりません。ユーザーがボタンをクリックしたときにレイヤーを作成しました。また、レイヤーの名前が異なります。「abc」+i に設定されたレイヤーの名前。i は常にインクリメントする変数です。jquery-1.8.3.js、jquery-ui.js、および kinetic-v4.3.2-beta.js を使用しています。
document.getElementById('computer').addEventListener('click', function(e) {
draw(images);
layer.add(Img);
stage.add(layer);
i++;
}, false);
これが関数 draw のコードです
function draw( images ) {
Img = new Kinetic.Rect({
x: 50,
y: 150,
width: 50,
height: 50,
fillPatternImage: images.abc,
name: "abc"+i,
draggable: true
});
}
ユーザーがそのレイヤーをダブルクリックすると、ダイアログボックスが表示されます。そして、そのレイヤーの名前を変数名に保存しました。
layer.on( 'dblclick', function(evt) {
var shape = evt.shape;
name = shape.getName();
$( "#dialog-form" ).dialog( "open" );
});
$( "#dialog-form" ).dialog({
autoOpen: false,
height: 350,
width: 350,
modal: true,
buttons: {
"Submit": function() {
**name.setDraggable(false);**
},
Cancel: function() {
$( this ).dialog( "close" );
}
},
close: function() {
allFields.val( "" ).removeClass( "ui-state-error" );
}
});
使い方がわかりません..助けてください..THx..