jQueryUI - 可拖动在“停止”事件执行后重置z-index

时间:2010-09-23 21:25:25

标签: css jquery-ui

我正在尝试重新排序多个DIV的z索引,以便最近拖动的最重要。左侧。 我有以下代码:

$(".elementsIWantToDrag").draggable({
    zIndex: 10000,
    stop: function(){
        $(this).css('z-index', 9999);
        alert($(this).css('z-index'));
    }
});

......在实际执行之前一切顺利。当我拖动项目后鼠标向上时,我确实得到了9999作为z-index值的警报。单击“确定”清除警告框后,FireBug立即显示更改为10的值。

在我看来,在可拖动代码实际完成所有操作之前调用了stop()事件......比如将z-index设置回拖动开始之前的状态。

删除zIndex: 10000似乎有一个稍微不同的效果 - draggable为z-index指定了与该参数不同的数字,但它仍然覆盖了我正在尝试做的事情。

有关如何使其发挥作用的建议?

2 个答案:

答案 0 :(得分:0)

您可以通过在鼠标悬停时更改对象的z-index(对于x-windows跟随焦点类型事件)或mousedown事件(以便在可拖动的z-index开始之前触发)来绕过此问题)绑定到'.elementsIWantToDrag'。这可能会在可拖动事件开始之前发生,因此它会将z-index“恢复”为鼠标按下事件中设置的内容,而不是当前设置的内容。

答案 1 :(得分:0)

$( “elementsIWantToDrag”)。可拖动({     堆栈:“CSS CLASS常见于所有可拖动的DIVS” });

http://jqueryui.com/demos/draggable/#visual-feedback