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 :

Fonctionnement de .on('click'): Preventdefault()


Sujet :

jQuery

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2015
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Fonctionnement de .on('click'): Preventdefault()
    Bonjour,
    J'ai sensiblement le même problème que Noquioz dans cette discussion .on('click'): Preventdefault() fonctionne pas pour tous les liens.

    En synthèse, lors d'un clic de l'utilisateur sur un lien X, je souhaite empêcher le scroll vers ce lien X. Le div qui contien le lien X est généré en javascript par l'appel à une fonction au chargement de la page, de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function creation_chanson (number){
        var ligne = document.getElementById('lignechanson');     <!--récupération du DIV conteneur 'lignechanson' créé dans le HTML -->
        var div1 = document.createElement('div');                    <!--création d'un div dans le conteneur 'lignechanson'  -->
     
               .... // autre div créés
    
            var div12 = document.createElement('div'); <!--élément cliquable que je souhaite figer lors du clic -->
            div12.className='col-md-6 cursor_clic figer_clic';
            div12.setAttribute("onClick",'clic_chanson(this)');  <!--fonction annexe qui permet de lancer des actions lors du clic -->
       
       div1.appendChild(div12);  
       ligne.appendChild(div1); 
    
           .... // autre div créés
    Pour empecher le scroll lors du clic sur div12, j'utilise ensuite la fonction suivante comme précisé par Daniel ci-dessus:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $( "#lignechanson" ).on( "click", "div.figer_clic", function(e) {
        e.preventDefault();
    });
    Malheureusement, cela ne fonctionne pas et je ne comprends pas pourquoi. J'ai aussi testé avec un seul selector et le scroll n'est pas non plus bloqué lors du clic.
    Merci de votre aide.

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 937
    Points
    22 937
    Billets dans le blog
    125
    Par défaut
    Le problème est causé par le "onclick", il s'exécutera toujours en premier.

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2015
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci, cela a résolu mon problème. J'ai tout mis dans une même fonction.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/11/2014, 13h08
  2. Réponses: 2
    Dernier message: 17/02/2010, 14h46
  3. L'évènement click ne fonctionne pas
    Par cassis2k dans le forum jQuery
    Réponses: 1
    Dernier message: 01/01/2009, 23h22
  4. Réponses: 0
    Dernier message: 24/10/2007, 12h13
  5. Bouton evenement click ne fonctionne pas
    Par delphine_lep dans le forum IHM
    Réponses: 3
    Dernier message: 06/04/2007, 16h12

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