私はいくつかの(動的に生成された)divを持っており、そのz-indexはcssで120に設定されています:
.plugin {
position: absolute;
z-index: 120;
}
タイトル(上部に配置)とキャンバスが含まれています。
.plugin_title {
font-size: 13px;
color: rgba(255, 255, 255, 0.9);
font-family: arial;
background-color: #300;
z-index: 150;
}
.plugin_canvas {
position: relative;
background-color: black;
border: 1px solid #300;
border-bottom-right-radius: 5px;
z-index: 120;
}
私がそれらを作成するとき、私はします:
var div = $( '<div class="plugin ' + audioclass + '" id="'+ id + '"</div>').width(width + 2).height(height + 2);
var ctx = $( '<canvas class="plugin_canvas" width="' + width + '" height="'+ height + '" />', {width: width, height: height} );
var title = $( '<div class="plugin_title"> ' +name + ' </div>');
title.appendTo(div);
ctx.appendTo(div);
div.appendTo('#plugin_area');
次にjsplumb.draggable
、それらをドラッグ可能にするために呼び出します(jsplumbはjqueryを呼び出すだけです.draggable()
)
jsPlumb.draggable(div, {cursor: "move", handle: title, opacity: 0.9, stack: ".plugin", scroll: true})
問題は、.plugin divの1つをドラッグすると、そのz-indexが1にリセットされることです(stack
オプションがあるため、ドラッグするたびに増分されます)。代わりに、z-indexを120(.plugin divの元のz-index値)から開始し、その値からインクリメントする必要があります。
jqueryui 1.7には、オプションのmin
パラメーターがありました。stack
jqueryui 1.9.2(私が使用しているバージョン)では、セレクターのみを指定できます。これから、スタッキングは要素の既存のz-indexから開始する必要があります。代わりに、1から任意に再開しているようです。何が欠けていますか?
(jsplumb:1.3.16、jqueryui:1.9.2、jquery:1.8.1。古いバージョンのjquery-uiにロールバックできないことに注意してください)