2012-05-15 67 views
1

我有這樣的代碼,低於該動畫一個DIV全droppables眼簾的,當你開始拖動可拖動的元素jQuery的動畫投擲的元素沒有設置動畫的「目標可投放區域」

var droptions = { 
      accept: '.sdPlayer', 
      hoverClass: 'target', 
      tolerance: 'pointer', 
      drop: function(event, ui) { 
       var songId = (ui.draggable[0].id).substring(3); 
       var mixId = (event.target.id).substring(4); 
       alert('Song '+songId+' added to mix '+mixId); 
      }   
     } 
     $('.sdPlayer').draggable({ 
      revert: true, 
      revertDuration: 100, 
      distance: 40, 
      zIndex: 10, 
      start: function(){ 
       $('#mix-dropper').animate({top:122},200); 
      }, 
      drag: function(){ 
       pl.dragging = true; 
      }, 
      stop: function(){ 
       $('#mix-dropper').delay(500).animate({top:12},300); 
       pl.dragging = false; 
      } 
     }); 

,並創建功能與droppables股利:

// Insert user's mixes into #mix-dropper div below header 
function mixDropper(){ 
    $.ajax({ 
     type: 'GET', 
     url: baseURL+"mixes/getmixes/", 
     success: function(response){ 
      $('#mix-dropper-mixes').html(response); 
      //make newly appended divs droppable 
      $(".mix-dropper-mix").droppable(droptions) 
     } 
    }); 
} 

我遇到的問題是,你必須拖動可拖動過的區域,該$('#mix-dropper-mix')在之前它的父$('#mix-dropper')很活躍,它的工作,我莫名其妙地需要d可以認識到可投擲物已經移動。

任何人都可以告訴我可以做些什麼或其他解決方案嗎?

回答

0

是的(4年太晚了),加refreshPositions: true,$('.sdPlayer').draggable({將進行排序。

我花了太多時間才弄清楚。