1
次のスニペットは、それらの上にドラッグして、両方の正方形を選択赤い四角は、順方向順序(Zインデックス)
- 上記緑色の正方形を有するが変化します。
- 四角が注文を切り替えている
bring forward
をクリックした後bring forward
ボタン
をクリックします。アイテムは同じ順序にとどまらなければならないが、ボタンがさらにクリックされると、他の選択されていないアイテムの上にますます移動することは私の理解である。
選択を解除して実験を繰り返すと、再び切り替わります。
アイデア?
var canvas = new fabric.Canvas('c',
{
preserveObjectStacking \t : true
});
var rect = new fabric.Rect({
left: 10, top: 10,
fill: 'red',
width: 100, height: 100,
hasControls: true
});
canvas.add(rect);
var rect2 = new fabric.Rect({
left: 40, top: 40,
fill: 'green',
width: 100, height: 100,
hasControls: true
});
canvas.add(rect2);
$("#bringForward").click(function()
{
\t var items = canvas.getActiveObject() || canvas.getActiveGroup();
\t if(items)
\t \t items.bringForward();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/fabric.js/1.7.6/fabric.min.js"></script>
<button id="bringForward">Bring Forward</button>
<canvas id="c" width="640" height="480"></canvas>
あなたは(すなわち、個々のものが選択されていないし、次に選択されたものの順序を追跡するそれらを移動している)自分自身でそれをうまくする必要があるとしています。 –
私はあなたが好きなら、何かを嘲笑してうれしく思います...あなたがここで始める必要があります、 'canvas.on( 'object:selected'、onObjectSelected);'、選択されたイベントを作成して、 'canvas.bringForward(canvasSelectedItem、true);' send backward ...など。 –
@TimHarkerこれは、開発者にとってのバグの例です。私はまた、この質問へのリンクを持つこれらのgitページにこの質問を投稿しました。あなたが質問に答えることを試みるためにハッピー! –