Vous pouvez le faire en utilisant le jQuery UI's Droppable et Draggable
Qu'est-ce que vous voulez est d'ajouter le Droppable's Over event qui peut être fait soit de cette façon :
$(".selector").droppable({
over: function(event, ui) { ... }
});
ou de cette façon:
$(".selector").bind("dropover", function(event, ui) {
...
});
Je préfère utiliser la première méthode mais c'est à vous sauf. Ainsi, par votre exemple
<meta charset="UTF-8" />
<style type="text/css">
#drag_object{ width: 100px; height: 100px; padding: 0.5em; float: left; margin: 10px 10px 10px 0; }
#drag_over{ width: 150px; height: 150px; padding: 0.5em; float: left; margin: 10px; }
</style>
<script type="text/javascript">
$(function() {
$("#drag_object").draggable();
$("#drag_over").droppable({
over: function(event, ui) { alert('You dragged me over'); }
});
});
</script>
<div class="demo">
<div id="drag_object" class="ui-widget-content">
<p>Drag me to my target</p>
</div>
<div id="drag_over" class="ui-widget-header">
<p>Drop here</p>
</div>
</div><!-- End demo -->
Vous pouvez vérifier cela: http://jsfiddle.net/TYrT8/
je dois manipuler le DOM en ajoutant un div avec du texte dynamique à l'aide de test() et je ne peux pas voir comment mettre en œuvre cela en utilisant jqueryUI? – significance
Si vous utilisez la droppable draggable de jQuery UI, il y a un événement appelé 'drop' qui se déclenche après que #drag_object soit tombé dans #drag_over. Cet événement peut facilement appeler votre fonction. Votre code pourrait ressembler à ceci: \t $ ("# drag_object"). Draggable(); . \t $ ("# largable") largable ({ \t \t goutte: test(); \t \t}); source: http: //jqueryui.com/demos/droppable/#event-drop – lnrbob
ah oui - sauf en utilisant 'over'! Merci. Si vous voulez mettre cela dans une réponse je vais le marquer comme correct. merci :) – significance