我想拖动一个 Famous 表面,并在我放开它时让它回到原来的位置。我采用了“拖动”示例并对其进行了修改,但是在mouseup
触发回调时(我检查了console.log
),修改器转换不是。以下是相关代码:
var surface = new Surface({
size: [200, 200],
content: 'drag',
properties: {
backgroundColor: 'rgba(200, 200, 200, 0.5)',
lineHeight: '200px',
textAlign: 'center',
cursor: 'pointer'
}
});
var draggable = new Draggable({
xRange: [-220, 220],
yRange: [-220, 220]
});
surface.pipe(draggable);
var mod = new Modifier();
var trans = {
method: 'snap',
period: 300,
dampingRatio: 0.3,
velocity: 0
};
surface.on('mouseup', function() {
mod.setTransform(Transform.translate(0, 0, 0), trans);
});
mainContext.add(mod).add(draggable).add(surface);
很确定这与我最后add
将它们的顺序/方式mainContext
以及事件触发的顺序有关。我在做什么错/误解?