2009-05-31 5 views
0

J'utilise actuellement le code ci-dessous pour pouvoir faire glisser un élément dans un conteneur div (ceci est important, il ne peut pas être simplement déplacé n'importe où sur la page). J'utilise mootools pour y parvenir, mais je convertis tout pour utiliser le prototype, mais je n'arrive pas à comprendre comment le faire fonctionner avec un prototype.Convertir l'élément Mootools Faire glisser vers le prototype

window.addEvent('domready', function(){ 
     var container = $('containment'); 
     new Drag.Move('dragger1', {'container': container}); 
    }); 

Mise à jour: J'ai trouvé que je peux utiliser script.aculo.us pour faire le Traîner, mais je ne vois pas de toute façon de limiter le mouvement dans un espace défini ou élément div.

Répondre

0

Je ne sais pas si vous pouvez limiter la zone dragable avec Prototype/Scriptaculous.

Vous pouvez restreindre la cible de dépôt afin qu'elle ne puisse être supprimée qu'à un endroit spécifique, mais je ne suis pas au courant d'un moyen de la forcer à rester dans une certaine limite.

Vous pourriez écrire quelque chose si vous pouvez déterminer la position de l'élément de confinement, mais cela pourrait poser plus de problèmes que vous le souhaitez. :)

+0

Existe-t-il un moyen de le faire d'une autre manière avec Prototype? –

+1

Je l'ai trouvé en creusant: http://www.talkincode.com/scriptaculous-confine-draggable-18.html C'est un peu plus manuel que jQuery, mais on dirait que ça marche et ça va avec ce que j'ai dit ci-dessus sur la détermination des dimensions de l'élément parent. – Jason

+0

Merci! C'est ce que je cherchais, avec quelques légères modifications pour le faire glisser en douceur: sinon retour n- (n% 10); devrait être changé en else return n- (n% 1); de sorte qu'il se déplace de 1 pixel plutôt que de morceaux de 10. –

Questions connexes