2011-06-30 4 views
0

У меня есть скрипка, где черный ящик медленно перемещается по экрану. Я также хочу утащить черный ящик и перенести его в розовую коробку, но я не могу понять это. Я пытался использовать код ниже, но он все ломал все. Я новичок, поэтому, если вы можете помочь, пожалуйста, дайте как можно больше объяснений. Большое спасибо!Перетащите анимированный объект с помощью jquery?

Обновление: Извините, изначально у меня была неправильная скрипка. Это верно в настоящее время

http://jsfiddle.net/mjmitche/LeztD/1/

$(function() { 
     $("#draggable, #draggable-nonvalid").draggable(); 
     $("#droppable").droppable({ 
      accept: "#draggable", 
      activeClass: "ui-state-hover", 
      hoverClass: "ui-state-active", 
      drop: function(event, ui) { 
       $(this) 
        .addClass("ui-state-highlight") 
        .find("p") 
         .html("Dropped!"); 
      } 
     }); 
    }); 

ответ

1

Вы должны остановить анимацию при запуске перетаскивания:

http://jsfiddle.net/LeztD/2/

$("#draggable").draggable({ 
    start: function() { 
     $(this).stop(); 
    }, 
    stop: function(){ 
     cloudMove(); 
    } 
}); 

Этот код в основном останавливает анимацию при запуске перетаскивания и запускает его обратно, когда вы его отпустите.

Возможно, вы захотите изменить cloudMove, чтобы принять во внимание местоположение окна при запуске анимации и настроить продолжительность.

+0

спасибо большое – Leahcim

+0

В моей реализации (www.instagirl.com), я перетаскиваю изображение, но сообщение html не появляется, когда оно заходит, поэтому я не уверен, что он работает. Кроме того, знаете ли вы, как удалить изображение после его удаления? белый ящик на моем сайте должен быть недоступен – Leahcim

+0

Не проблема на самом деле, сообщение html появляется, но должно быть очень точно о том, где размещено – Leahcim

Смежные вопросы