首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过名称对图层执行setDraggable(false)

问如何通过名称对图层执行setDraggable(false)
EN

Stack Overflow用户
提问于 2013-04-05 14:32:33
回答 1查看 482关注 0票数 0

我的程序出了点问题。我想把layer的setDraggable设置为false。但我不知道如何设置它。当用户点击按钮时,我创建了这个层。并且该层具有不同的名称。设置为"abc"+i的层名称。I是一个始终递增的变量。我使用的是jquery-1.8.3.js、jquery-ui.js和kinetic v4.3.2-beta.js。

代码语言:javascript
复制
document.getElementById('computer').addEventListener('click', function(e) {
    draw(images);
    layer.add(Img);
    stage.add(layer);
    i++;
}, false);

下面是绘制函数的代码

代码语言:javascript
复制
function draw( images ) {
    Img = new Kinetic.Rect({
       x: 50,
       y: 150,
       width: 50,
       height: 50,
       fillPatternImage: images.abc,
       name: "abc"+i,
       draggable: true
    });
}

然后,当用户双击该层时,会出现一个对话框。我将该层的名称保存为变量名。

代码语言:javascript
复制
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" );
    }
});

我不知道如何使用that..Please帮助..THx..

EN

回答 1

Stack Overflow用户

发布于 2013-04-05 21:52:16

代码语言:javascript
复制
stage.get(name).setDraggable(false);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15827360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档