2013-03-06 105 views

回答

0

那麼,因爲dragOnTop將您的項目移動到臨時圖層,那麼您應該禁用該功能。

darthVaderImg = new Kinetic.Image({... , dragOnTop: false, ...}); 

這應該有效。

+0

你看到小提琴嗎?我已經做到了... – jure 2013-03-06 23:02:06

+0

EliteOctagon,你能幫我嗎?謝謝 – jure 2013-03-07 00:41:33

1

大部分問題來自可拖動對象初始狀態莖:假

這是我的解決方案,到目前爲止,希望它帶給你更接近:http://jsfiddle.net/EwrkQ/4/

darthVaderImg.on('mouseover', function() { 
     document.body.style.cursor = 'move'; 
    }); 
    darthVaderImg.on('mousedown', function() { 
     this.moveTo(temp); 
     this.setDraggable(true); 
     this.simulate('dragstart'); 
     layer.draw(); 
     temp.draw(); 
    }); 
    darthVaderImg.on('dragmove', function() { 
     temp.draw(); 
    }); 
    darthVaderImg.on("dragend",function(){ 
     //this.setDraggable(false); 
     this.moveTo(layer); 
     layer.draw(); 
     temp.draw(); 
     this.off("mouseup"); 
     }); 

    darthVaderImg.on('mouseout', function() { 
     document.body.style.cursor = 'default'; 
    }); 
+0

感謝您的幫助,但是下面的例子(運行Kineticjs 4.0.1)可以拖拽onmousedown,我會進一步調查另一個解決方案http://www.html5canvastutorials.com/labs/html5-canvas-kineticjs-拖放和壓力測試與1000形狀/ – jure 2013-03-07 02:22:01

+0

任何人有一個想法讓我的jsfiddle工作? – jure 2013-03-07 23:56:40

+0

拜託,我被封鎖了...... – jure 2013-03-08 12:40:15

相關問題