代码之家  ›  专栏  ›  技术社区  ›  Scott Baker

jQueryUI-执行“stop”事件后可拖动重置z索引

  •  0
  • Scott Baker  · 技术社区  · 15 年前


    我有以下代码:

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

    …在真正执行之前一切都很好。当我在拖动一个项目后向上移动鼠标时,肯定会得到带有9999作为z索引值的警报。单击“确定”清除警报框后,FireBug立即显示值更改为10。

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

    zIndex: 10000 似乎有一个稍微不同的效果-draggable为z索引分配不同的数字,而不是使用该参数,但它仍然覆盖了我正在尝试做的事情。

    关于如何让它工作的建议?

    2 回复  |  直到 15 年前
        1
  •  0
  •   Cardo    15 年前

    $(“.elementsIWantToDrag”).draggable可拖动({ stack:“所有可拖动div通用的CSS类”

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

        2
  •  0
  •   John Wordsworth    15 年前

    您可以通过更改mouseover上对象的z索引(对于x-windows follow focus类型事件)或mousedown事件(以便在可拖动的z索引启动之前触发)来规避此问题,该事件绑定到“.elementsIWantToDrag”。这可能会在draggable事件开始之前发生,因此它会将z索引“还原”为在mouse down事件中设置的值,而不是当前设置的值。