IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

jQuery UI Draggable [IE]


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 65
    Par défaut jQuery UI Draggable [IE]
    Bonjour,

    J'explique mon problème qui est assez contraignant pour mon projet.

    Prenons l'exemple du bout de code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <div>
      <div id="col_1" class="droppable">
          <div class="draggable"></div>
      </div>
      <div id="col_2" class="droppable">..</div>
      <div id="col_3" class="droppable">..</div>
      <div id="col_4" class="droppable">..</div>
      <div id="col_5" class="droppable">..</div>
    </div>
    A l'intérieur de ces div j'ai mes éléments draggables

    Mon initialisation javaScript des éléments droppables est là suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    var initDroppable = function() {
    	var fctOver= function (event, ui) {
    		$(this).append(ui.draggable);
    	};
     
    	var conf = {
    		tolerance: 'pointer',
    		over: fctOver
    	};
     
    	$('.droppable').droppable(conf);
    };
    Problème sous IE, lorsque la fonction 'fctOver' s'execute quand mon helper arrive sur l'élément droppable, j'ai également l'évènement STOP de mon élément draggable qui s'éxécute et plante donc tout !

    Apparement IE n'aime pas trop le fait de modifier l'emplacement d'un élément dans le DOM pendant le dragging.

    Si quelqu'un à une solution à proposer je suis preneur. Si vous ne saisissez pas exactement mon problème, merci de me le redire j'essayerais d'être plus explicite avec une page de demo.

    Merci :]

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 65
    Par défaut
    Resolu ! En voilant créer un exemple pour que le problème soit plus explicite j'ai trouvé la solution o_O

    Dans ma fonction suivante il fallait vérifier que on append n'était pas fait sur la même colonne que $(this) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var fctOver= function (event, ui) {
    	$(this).append(ui.draggable);
    };
    Ce qui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var fctOver= function (event, ui) {
    	if ( $(this).attr('id') != ui.draggable.parents('.droppable').attr('id') ) {
    		$(this).append(ui.draggable);
    	}
    };
    Ah la la les joies de IE enfin le problème est résolu c'est le principal!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [UI] inclusion de jQuery UI Draggable
    Par salma.mathlouthi dans le forum jQuery
    Réponses: 3
    Dernier message: 07/01/2013, 14h28
  2. Réponses: 0
    Dernier message: 15/02/2012, 16h01
  3. Jquery UI Draggable
    Par royalwear dans le forum jQuery
    Réponses: 1
    Dernier message: 16/01/2012, 15h41
  4. Réponses: 3
    Dernier message: 04/08/2011, 20h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo