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 :

Avoir 5 div mais 1 seule qui charge de façon aléatoire


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 64
    Points : 23
    Points
    23
    Par défaut Avoir 5 div mais 1 seule qui charge de façon aléatoire
    Bonjours alors voilà j'ai 5 div avec des contenus differents comme ceci :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <div>Contenu 1</div>
    <div>Contenu 2</div>
    <div>Contenu 3</div>
    <div>Contenu 4</div>
    <div>Contenu 5</div>
    Je voudrais qu'au chargement de la page il n'y en ai qu'une qui charge mais de façon aléatoire.
    Je pense qu'il faut utiliser un display:none avec un code javascript mais je n'ai rien trouvé nul part.
    Donc si vous aviez des idées, merci.

  2. #2
    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 : 53
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    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

  3. #3
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 64
    Points : 23
    Points
    23
    Par défaut
    Non avec les iframe ça ne vas pas en fait.
    J'ai essayé ceci mais ça ne fonctionne pas :

    http://jsfiddle.net/devinkoncar/RJMhT/1060/

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2009
    Messages
    598
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 598
    Points : 628
    Points
    628
    Par défaut
    Mais pourquoi ce n'est pas plutôt un seul div avec un contenu aléatoire ?


    Sinon pour ton problème teste ça :

    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
    Function aleatoire()
    {
       N=Math.random(); // chiffre aléatoire entre 0 et 1.
       var alea=Math.round(N*3); // Multiplié par 4 et arrondi.
       // Sélectionne le Div aléatoirement.
       obj=document.getElementById("A").style.display="none";
       obj=document.getElementById("B").style.display="none";
       obj=document.getElementById("C").style.display="none";
       obj=document.getElementById("D").style.display="none";
     
       switch(alea)
       {
       case 0:obj=document.getElementById("A").style.display="block";
       case 1:obj=document.getElementById("B").style.display="block";
       case 2:obj=document.getElementById("C").style.display="block";
       case 3:obj=document.getElementById("D").style.display="block";
       }
    }
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <Body onload="aleatoire()">
     
    <div id="A"></div>
    <div id="B"></div>
    <div id="C"></div>
    <div id="D"></div>
     
    </body>


    Normalement on optimise en passant par le DOM en cherchant tous les noeuds etc mais j'ai pas voulu m’embêter, à toi d'optimiser si ça te dit
    Cliquez ici et reprenez le pouvoir !
    A bas IE !, Google, et le pistage du net, testons DuckDuckGo.com
    Lords Of The Realm II Download : Lords of the realm 2
    Infos en anglais :Ici

  5. #5
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 64
    Points : 23
    Points
    23
    Par défaut
    Mais pourquoi ce n'est pas plutôt un seul div avec un contenu aléatoire ?
    Oui bien sûr ça peut être ça aussi, le résultat et le même surtout si c'est plus facile à mettre en place.

    Merci je vais essayer ce que tu me propose

  6. #6
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Points : 3 747
    Points
    3 747
    Par défaut
    Oui enfin il y a moyen de faire plus simple
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    div {
        display:none;
    }

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var els = document.getElementsByTagName("div"), 
        r = Math.floor(els.length * Math.random());
     
    els[r].style.display="block";
    Je ne réponds pas aux questions techniques par MP.

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2009
    Messages
    598
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 598
    Points : 628
    Points
    628
    Par défaut
    Effectivement
    J'avais précisé que ma méthode n'était pas la meilleure, et qu'en passant par le DOM on pouvait mieux faire mais c'est la méthode qui m'est venue le plus facilement en tête, pour la meilleure méthode il aurait fallu que je fasse quelques recherches sur le Dom

    En tous cas l'idéal cette méthode de Macmillenium

    Tu pourras utiliser ma méthode pour autre chose, le jour où tu voudra activer un truc parmi plusieurs sans rechargement de la page.

    PS: Theophile, pense au bouton "Résolu"
    Cliquez ici et reprenez le pouvoir !
    A bas IE !, Google, et le pistage du net, testons DuckDuckGo.com
    Lords Of The Realm II Download : Lords of the realm 2
    Infos en anglais :Ici

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 20/09/2011, 15h39
  2. Deux progs équivalents mais un seul qui marche
    Par stokastik dans le forum SDL
    Réponses: 3
    Dernier message: 21/08/2006, 18h48
  3. moteur de recherche qui marche de façon aléatoire.
    Par sam01 dans le forum Requêtes
    Réponses: 3
    Dernier message: 12/06/2006, 16h09
  4. Réponses: 13
    Dernier message: 25/01/2005, 10h05
  5. Boutons Radios qui charge une page php différente
    Par nebule dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/11/2004, 15h25

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