2013-10-31 32 views
0

在Kinetic JS中選中或單擊形狀後,是否可以將形狀帶到HTML畫布的前端?我可以將樣式添加到形狀中,但我無法將選定的形狀添加到前面。我已經看到數百個使用單獨按鈕將它們移動到前面的示例。有沒有this.moveToTop()?在Kinetic JS中點擊形狀前面的圖形

這是我目前使用的一次選擇

triangle.on('mouseover touchstart', function() { 
    this.setShadowOpacity(1); 
    layer.draw(); 
}); 

triangle.on('mouseout touchend', function() { 
    this.setShadowOpacity(0); 
    layer.draw(); 
}); 

回答

0

是的,你可以使用triangle.moveToTop()鼠標懸停內,或單擊節點上監聽器的代碼添加陰影到我的形狀。

演示:http://jsfiddle.net/m1erickson/gQeEB/

enter image description hereenter image description here

circle1.on("click",function(){ 
    circle1.moveToTop(); 
    layer.draw(); 
}); 
+0

我以前嘗試這樣做,這是行不通 – mdurchholz

+0

這個工作對我來說... http://jsfiddle.net/m1erickson/ gQeEB/ – markE

+0

所以我的情況是,我的畫布左側有兩個按鈕,點擊時會產生黑色或紅色的三角形。每次單擊按鈕時,我都會調用一個triangle()函數,該函數會創建一個具有唯一ID的新三角形並將其添加到圖層中。你是否認爲它不起作用,因爲我正在使用函數來製作自己的形狀? – mdurchholz