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 :

Drag & Drop - Safari + Mozilla


Sujet :

jQuery

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Décembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 8
    Points : 11
    Points
    11
    Par défaut Drag & Drop - Safari + Mozilla
    Bonjour,

    Auriez-vous une idée de pourquoi le système de drag and drop ci-dessous fonctionne avec Chrome et IE, mais pas avec Mozilla et Safari?

    Sur Safari et Mozilla, même les lignes ne sont pas draggable...

    Merci,

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <tr class="tableline" draggable="true"></tr>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     $(document).on("mouseenter", "#table", function () {  
        $('.tableline').on({
            dragstart: function(e) {
                $this = $(this);
                $this.css('opacity', '0.7');
                $this.addClass('dragitemclass');
            },
            dragenter: function(e) {
                $(this).addClass('dragoverclass');
                e.preventDefault();
            },
            dragleave: function() {
                $(this).removeClass('dragoverclass');
            },
            dragover: function(e) {
                    $(this).addClass('dragoverclass');
                e.preventDefault();
            },
            drop: function(e) {
    		$(this).removeClass('dragoverclass');
            },
            dragend: function() {
                $(this).css('opacity', '1');
                $(this).removeClass('dragoverclass');
                $(this).removeClass('dragitemclass');
            },
        });
    });

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    ton code est incomplet, il te faut déclarer les données à transférer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    dragstart: function (e) {
        var $this = $(this);
        var ev = e.originalEvent
        ev.dataTransfer.setData('text/plain', $this.html()); // par exemple
        $this.css('opacity', '0.7');
        $this.addClass('dragitemclass');
    },
    Remarques sur le reste :
    • avec ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     $(document).on("mouseenter", "#table", function () {  
        $('.tableline').on({
    tu ajoutes un écouteur à CHAQUE FOIS que tu survoles la table, tu vas vite saturer la pile !

    • Comme tu utilises jQuey pourquoi ne pas utiliser le widget-draggable ?

Discussions similaires

  1. Drag and drop "de l'extérieur"
    Par Invité dans le forum C++Builder
    Réponses: 12
    Dernier message: 31/03/2020, 10h10
  2. [JSP][DRAG AND DROP]
    Par hamed dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 23/01/2004, 17h36
  3. drag and drop
    Par jujuesteban dans le forum Composants VCL
    Réponses: 5
    Dernier message: 20/06/2003, 09h23

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