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

JavaScript Discussion :

lire dans un "onclick"


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de zugolin
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 275
    Par défaut lire dans un "onclick"
    bonjour a tous,
    je voudrais pouvoir lire dans une page, le "onclick", mais je n'y arrive pas ;
    ça fonctionne pour lire le href, mais pas le onclick ...

    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
     
    var	liens = content.document.getElementsByTagName("a");
     
    for (var i = 0, il = liens.length; i < il; i++) {
    lien = liens[i].href;
    oncl= liens[i].onClick;/* onclick : meme resultat: rien*/
    if (lien.substring(0, 4).toLowerCase() == 'http') {
    					csLiens.writeString(lien + '\r');
    				}
    if (lien.substring(0, 3).toLowerCase() == 'www') {
    					csMails.writeString(lien + '\r');
    				}
    if (oncl.substring(0, 5).toLowerCase() == 'ouvre') {
    					csMails.writeString(oncl + '\r');
    				}
    			}
    j'ai l'impression que ça viendrait du fait que c'est un attribut different, plus general ... il n'est peut etre pas considéré dans le tagname "a" , non?
    y'a til une autre solution?
    merci d'avance pour votre aide

  2. #2
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    les attributs provenant de javascript et du DOM sont stockés différement.

    en javascript tu peux rajouter un évènement click en utilisant l'attribut "onclick" (sans majuscule) et tu peux récupérer cet évènement via le même attribut mais uniquement celui généré par le javascript et non celui du DOM.


    pour récupérer les attributs du DOM, utilise la méthode "getAttribute('nom_de_lattribut')"

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Non, la propriété onclick est bien accessible, le seul truc à savoir, c'est que ce qui est présent en valeur de l'attribut est englobé par JavaScript dans une fonction anonyme.
    Pour t'en persuader, ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert('('+typeof oncl+') '+oncl);
    Ensuite, il existe bien entendu la méthode toString() pour les fonctions, mais de toute façon, tu auras toujours "function(){" au départ, ce qui risque de fausser tes résultats

    EDIT : Enfin, c'est pour pinailler un peu : avec getAttribute(), tu auras directement la bonne valeur
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre éclairé Avatar de zugolin
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 275
    Par défaut
    bon,
    je reviens un peu tard, désolé ...
    mais je n'y arrive pas
    alors, après réflexion, je me suis dit que , de toute façon, je risque avoir d'autres problèmes par la suite, si jamais la recherche n'est, ni dans le onclick, ni dans le href
    alors, j'ai fait avec une fonction de spacefrog
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RegExp.prototype.match_all=function(mystring)
    prototype match_all pour expression régulière en javascript

    mais je n'ai pas réussi non plus ... décidément ...
    après, il faut savoir que c'est pour faire une fonction dans firefox qui est basé sur l'extension" link copier "...
    peut être que la cause vient de là?

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