-1

在 jquery selectable 完成正在做的事情(排序或其他)之后,我想不出一种方法来调用函数。我需要找出何时完成移动东西,因为它接缝我无法访问某些元素。这是代码:

我想调用这个函数来修复 zIndex 数字.. reparaZindex() 我试图把它放在开始或更新中,但没有任何效果。

$(function() {
    $( ".sortable" ).disableSelection();
    $( ".sortable" ).sortable({
        start: function(event, ui) {},
        update: function (event, ui) {}
       });
  });

我的脚本工作正常,加载页面时我可以检查所有 id-s,但更改列表后不起作用。这是一个可以查看的链接:

(在上面的示例中,我已将 reparaZindex 置于停止状态,但不起作用)

4

1 回答 1

-1

试试这段代码:

$(function() {
    $( ".sortable" ).disableSelection();
    $( ".sortable" ).sortable({
        stop : function(event, ui){
        reparaZindex(); 
        alert("bananas eat children");
   }
       });
  });

如果您收到警报但您的功能不起作用,则意味着您的 reparaZindex() 做错了。


$(function() 
{

    $( ".sortable" ).disableSelection();
    $( ".sortable" ).sortable({ 

        start: function(event, ui) {
        var start_pos = ui.item.index();
        ui.item.data('start_pos', start_pos);
    },





        update: function (event, ui) {
        var start_pos = ui.item.data('start_pos');
        var end_pos = ui.item.index();

            var eroare=0;

            //incepe trimiterea la bd a indexurilor

            for(var i=0;i<ui.item.parent().children().length;i++){
                    if(1==0) //eroare
                    eroare=1;
                    var x =ui.item.parent().children()[i];
                     //$(x).find('img').css('z-index',500-i);
                     y=$(x).children()[0];
                     y.style.zIndex=500-i*2;
                     if($(x).children().length>1){
                    c=$(x).children()[1];
                    TEMP=500-i*2+1;
                    c.style.zIndex=TEMP;
                    //alert(TEMP);
                    //alert($(x).children()[1].id)
                    }
                }
            if(eroare==0)//daca bd a upatat indexurile pt start_pos la eng pos
            {
                var copii=ui.item.parent().children();
                for(var i=0;i<ui.item.parent().children().length;i++){
                    //alert(ui.item.parent().children().eq(i).id())
                }


            }
            else {


                }   


    },
    stop: function(event, ui) { $.each($(".sortable > li"), function() {alert("!!!"+$(this).attr("id"));}); }

  });
});
于 2013-05-31T21:37:51.760 回答