• STATISTIQUES
  • Il y a eu un total de 2 membres et 12224 visiteurs sur le site dans les dernières 24h pour un total de 12 226 personnes!


    Membres: 2 399
    Discussions: 3 580
    Messages: 32 820
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] Microcontest
    Cryptographie: 7, Mathématiques: 8, Image Son Vidéo: 5, Intelligence artificielle: 3, Réseau: 2, Divers: 7, Phy...
    Challenges
    [EN] This is legal
    Basic: 10, Realistic: 5, Programming: 1, Bonus: 11, SQL: 2, Encryption: 6, Application: 4, User Contributed: 3
    Challenges
    [FR] NewbieContest
    Nous vous proposons une série de challenges regroupant plusieurs domaines allant de l'exploitation de fail...
    Hacking
    [FR] WeChall
    Audio: 3, Coding: 11, Cracking: 9, Crypto: 18, Encoding: 11, Exploit: 44, Forensics: 1, Fun: 6, HTTP: 6, Image: 8, Java:...
    Challenges
    [FR] Newbie Contest
    Crackme: 35, Cryptographie: 49, Hacking: 27, Javascript/Java: 17, Logique: 31, Programmation: 23, Stéganographie: 53
    Challenges
    [FR] Zenk-Security
    La communauté zenk-security a pour objet principal la sécurité informatique, nous sommes des tou...
    Hacking
    [FR] Secuser
    Actualité de la sécurité informatique, fiches virus et hoax, alertes par email, antivirus gratui...
    Hacking

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[JavaScript] parcours du DOM
07-08-2012, 10h51 (Modification du message : 19-11-2012, 18h43 par InstinctHack.)
Message : #1
InstinctHack Hors ligne
Posting Freak
*



Messages : 1,366
Sujets : 184
Points: 299
Inscription : Dec 2011
[JavaScript] parcours du DOM
J'ai fait un script pour parcourir récursivement le dom d'un id en javascript et récuperer la liste des attributs rencontrer sur mon chemin, il marche mais pas toujours ^^" J'aurais besoin d'aide sur ce coup-là.

Ce code est fonctionnel :
Code :
<div id="test"><span fonction="salut"></span>lol</div>
<br />
<textarea id="lol" style="color:red;height:500px;width:800px;" ></textarea>
<br />
<button onclick="explore_new(document.getElementById('test'));"></button>

<script type="text/javascript" >
var tab=0;
function explore_new(objet)
{
    var lol=document.getElementById('lol');

    function func_tab()
    {
        var ajout=""
        for(var salut=0;salut<tab;salut++)
        {
            ajout+="\t";
        }
        lol.innerHTML+=ajout;
    }

    func_tab();
    lol.innerHTML+="debut d'un array de type : "+objet.nodeType+" et de fonction : "+objet.getAttribute("fonction")+"\n";

    tab++;
    if(objet.hasChildNodes())
    {
        objet_enfants = objet.childNodes;//un array des enfants de l'objet passer en paramètre
        for (var i = 0, c = objet_enfants.length; i < c; i++)//on explore les enfants de l'objet
        {
            if(objet_enfants[i].nodeType==3)
            {
                func_tab();
                lol.innerHTML+="un enfant textuel\n";
            }
            else
            {
                explore_new(objet_enfants[i]);
            }
        }
    }

    tab--;
    func_tab();
    lol.innerHTML+="fin d'un array\n";
}
</script>

Mais si on remplace la première ligne :
Code :
<div id="test"><span fonction="salut"></span>lol</div>
par
Code :
<div id="test"><span fonction="salut"><span fonction="fuck"></span></span>lol</div>

Une erreur survient :/
Citation :TypeError: objet_enfants[i] is undefined
if(objet_enfants[i].nodeType==3)

j'ignore pourquoi.... >_<"

Problème résolu ainsi : (mais je comprend toujours pas l'erreur et Ca ça m'énerve ^^" )
Code :
<div id="test"><span fonction="salut"><span fonction="fuck">ça marche<span fonction="revoilà">salut les gens</span></span></span>lol</div>
<br />
<textarea id="lol" style="color:red;height:500px;width:800px;" ></textarea>
<br />
<button onclick="explore_new(document.getElementById('test'));"></button>

<script type="text/javascript" >
var tab=0;
function explore_new(objet)
{
    var lol=document.getElementById('lol');

    function func_tab()
    {
        var ajout=""
        for(var salut=0;salut<tab;salut++)
        {
            ajout+="\t";
        }
        lol.innerHTML+=ajout;
    }

    func_tab();
    lol.innerHTML+="debut d'un array de fonction : "+objet.getAttribute("fonction")+"\n";

    tab++;
    if(objet.hasChildNodes())
    {
        objet_enfants = objet.childNodes;//un array des enfants de l'objet passer en paramètre
        for (var i = 0, c = objet_enfants.length; i < c; i++)//on explore les enfants de l'objet
        {
            if(objet_enfants[i]!=undefined)
            {
                if(objet_enfants[i].nodeType==3)
                {
                    func_tab();
                    lol.innerHTML+="un enfant textuel de contenu : "+objet_enfants[i].nodeValue+"\n";
                }
                else
                {
                    explore_new(objet_enfants[i]);
                }
            }
        }
    }

    tab--;
    func_tab();
    lol.innerHTML+="fin d'un array\n";
}
</script>
Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!"
j'ai pas compris pourquoi, je croyais qu'on était dans la même classe
+1 (0) -1 (0) Répondre
07-08-2012, 11h27 (Modification du message : 07-08-2012, 11h28 par Booster2ooo.)
Message : #2
Booster2ooo Hors ligne
Contributeur
*****



Messages : 165
Sujets : 14
Points: 63
Inscription : Aug 2011
RE: parcours du DOM en javascript
Code :
<div id="test"><span fonction="salut"><span fonction="fuck"></span></span>lol</div>
<br />
<textarea id="lol" style="color:red;height:500px;width:800px;" ></textarea>
<br />
<button onclick="explore(document.getElementById('test'));"></button>

<script type="text/javascript" >
var tab=0
  , lol=document.getElementById('lol')
  
  , tabIt = function ()
    {
        for(var i=0;i<tab;i++)
        {
            lol.innerHTML+="\t";
        }
    }
  , explore = function (object)
    {
        var children = object.childNodes;
        tabIt();
        lol.innerHTML+="debut d'un array de type : "+object.nodeType+" et de fonction : "+object.getAttribute("fonction")+"\n";
        if(children.length > 0)
        {
            tab++;
            for(var i =0, c = children.length; i<c;++i)
            {
                if(children[i].nodeType==3)
                {
                    tabIt();
                    lol.innerHTML+="un enfant textuel\n";
                }
                else
                {
                    explore(children[i]);
                }
            }
        }
    }
  ;
</script>

Code :
debut d'un array de type : 1 et de fonction : null
    debut d'un array de type : 1 et de fonction : salut
        debut d'un array de type : 1 et de fonction : fuck
        un enfant textuel
+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  Apprendre JavaScript en s'amusant ! Booster2ooo 6 454 25-11-2013, 23h08
Dernier message: saywoot
  [JavaScript] Fonction trigo InstinctHack 11 741 12-11-2012, 15h28
Dernier message: Booster2ooo
  [JavaScript] Fonction Array Shirobi 18 987 29-10-2012, 22h36
Dernier message: InstinctHack
  [Html/Javascript] Comment cachées les informations que contienne une variable ? WizOut 22 1,165 21-10-2012, 14h15
Dernier message: sakiir
Tongue [JavaScript] faire de l'Ajax facilement InstinctHack 0 151 02-03-2012, 01h39
Dernier message: InstinctHack
  [Javascript] .toString() mercurial17 5 340 30-12-2011, 00h21
Dernier message: Ark

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut