AccueilFAQRechercherMembresGroupesS'enregistrerConnexion

Forum de graphisme, codage et game design proposant des tutoriels, astuces, libres services et commandes dans les domaines de l'infographie amateur, de l'intégration web (HTML et CSS essentiellement) ainsi que dans la conception de RPG sur forum.


    Design changeant selon l'heure (bannière, fond et autres)

    Partagez
    avatar
    Neva
    FémininAge : 25Messages : 18562

    le Dim 22 Sep 2013 - 16:33

    Rappel du premier message :


    Le code n'est pas caché sous balise hide, mais n'hésitez pas à remercier son auteur :)
    Lien pour comprendre pourquoi le contenu n'est pas sous hide


    RAPPELS :
    - Si vous avez un problème avec ce tutoriel, n'hésitez pas à poser vos questions mais faîtes-le ici : http://www.never-utopia.com/f177-probleme-avec-mon-code  (relisez le tutoriel en entier avant de le faire et, lorsque vous ouvrez votre sujet, fournissez l'adresse de ce tutoriel, le lien de votre forum ainsi que les codes CSS/Javascript/template posant problème)

    Salut à tous !

    Je vous propose un tutoriel permettant de modifier l’apparence de votre forum selon l’heure (que ce soit pour faire un effet jour/nuit, matin/après-midi, un changement pour seulement une heure ou deux dans la journée...). Les deux exemples proposés se concentreront sur la modification du fond du forum et la modification de la bannière mais je vous invite à tenter vos propres personnalisations =)

    A SAVOIR :  
    - Le code utilise l’heure de votre ordinateur donc, une fois le code installé, vous pouvez changer l’heure sur votre ordinateur et recharger la page pour tester les différentes périodes.  
    - Les codes javascript sont à insérer dans panneau d'admin > modules > gestion des codes javascript
    - Sur la page "Gestion des codes javascript", pensez à activer les codes en cochant "oui" après "Activer la gestion des codes Javascript" et en enregistrant.




    MODIFIER LE FOND DU FORUM ENTRE LE JOUR ET LA NUIT


    Tout d’abord, commencez par mettre votre image de fond pour la nuit à l’endroit habituel (panneau d’administration > affichage > gestion des images > mode avancé > Image du fond de page : collez l’adresse sur cette ligne et validez) et vérifiez qu’elle apparaît bien.

    Ensuite, nous n’avons besoin que d’un peu de JavaScript.

    Voici le code en question :
    Code:
    jQuery(document).ready(function(){var date = new Date();
            var heure = date.getHours();
            if(heure >= 7 && heure < 18){
              $("body").css("background-image", "url('ADRESSE FOND JOUR')");
            }
    });

    PERSONNALISATION :
    Sur la troisième ligne, vous pouvez voir que j’ai défini le jour comme étant entre 7h et 18h. Vous pouvez modifier ces chiffres selon vos désirs (ne touchez qu’aux chiffres).
    Attention, nous travaillons sur une base de 24h : 3h ne peut être que 3h du matin, on utilisera 15h pour 3h de l’après-midi.

    Sur la quatrième ligne, pensez à remplacer ADRESSE FOND JOUR par l’adresse de ladite image (faites attention à ne pas supprimer les apostrophes, l’adresse doit être écrite entre).

    Juste pour bien résumer, l'image que vous avez mise dans vos images est celle qui apparaît normalement et l'image mise dans le javascript est celle qui apparaît pendant la plage de temps inscrite dans le javascript.

    INSTALLATION :
    Une fois complété, le code est à mettre dans panneau d'admin > modules > gestion des javascript. Cochez bien la case Sur toutes les pages

    Et voilà, c’est tout ce qu’il y a à faire ! =)




    MODIFIER LA BANNIERE


    Tout d’abord, commencez par mettre votre bannière pour la nuit à l’endroit habituel (panneau d’administration > affichage > gestion des images > mode avancé > logo : collez l’adresse sur cette ligne et validez) et vérifiez qu’elle apparaît bien.

    Ensuite, il nous faut nos quelques lignes de JavaScript :
    Code:
    jQuery(document).ready(function(){var date = new Date();
            var heure = date.getHours();
            if(heure >= 8 && heure < 19){
              $("#pun-logo img,#i_logo,#logo img").attr("src", "ADRESSE FOND JOUR");
            }
    });


    PERSONNALISATION :
    Sur la troisième ligne, vous pouvez voir que j’ai défini le jour comme étant entre 7h et 18h. Vous pouvez modifier ces chiffres selon vos désirs (ne touchez qu’aux chiffres).
    Attention, nous travaillons sur une base de 24h : 3h ne peut être que 3h du matin, on utilisera 15h pour 3h de l’après-midi.

    Sur la quatrième ligne, pensez à remplacer ADRESSE FOND JOUR par l’adresse de ladite image (faites attention à ne pas supprimer les apostrophes, l’adresse doit être écrite entre).



    Si la taille de la bannière de jour diffère de celle de nuit, il vous faut compléter et utiliser ce code :
    Code:
    jQuery(document).ready(function(){var date = new Date();
            var heure = date.getHours();
            if(heure >= 8 && heure < 19){
              $("#pun-logo img,#i_logo,#logo img").attr("src", "ADRESSE FOND JOUR");
              $("#pun-logo img,#i_logo,#logo img").css("width", "LARGEUR EN PX");
              $("#pun-logo img,#i_logo,#logo img").css("height", "HAUTEUR EN PX");
            }
    });

    INSTALLATION :
    Une fois complété, le code est à mettre dans panneau d'admin > modules > gestion des javascript. Cochez bien la case Sur toutes les pages




    COMBINER LES DEUX CODES


    Si vous souhaitez modifier votre bannière ET votre fond, lisez les deux explications plus haut et suivez la démarche pour le template et le CSS de la bannière mais utilisez ce JavaScript :
    Code:
    jQuery(document).ready(function(){var date = new Date();
            var heure = date.getHours();
            if(heure >= 8 && heure < 19){
              $("#pun-logo img,#i_logo,#logo img").attr("src", "ADRESSE FOND JOUR");
              $("body").css("background-image", "url('ADRESSE FOND JOUR')");
            }
    });




    RAJOUTER DES TRANCHES HORAIRES


    Pour rajouter des tranches horaires, il suffit de reproduire la partie de code qui suit (il s'agit du code pour changer le fond, je vous donne plus bas les parties pour les deux autres codes) en en changeant les infos et en collant  après le } de la précédente et avant le " }); " de fin :

    Code:
           if(heure >= 7 && heure < 18){
              $("body").css("background-image", "url('ADRESSE FOND JOUR')");
            }

    Voilà ce que ça donnerait en ajoutant un 19-23h :
    Code:
    jQuery(document).ready(function(){var date = new Date();
            var heure = date.getHours();
            if(heure >= 7 && heure < 18){
              $("body").css("background-image", "url('ADRESSE FOND 7-18h')");
            }
            if(heure >= 19 && heure < 23){
              $("body").css("background-image", "url('ADRESSE FOND 19-23h')");
            }
    });

    Pour la bannière, c'est cette partie que vous devez copier/coller/remplir avec les nouvelles infos de la même façon :
    Code:
            if(heure >= 8 && heure < 19){
              $("#pun-logo img,#i_logo,#logo img").attr("src", "ADRESSE FOND JOUR");
            }

    Et cette partie pour le code combinant les deux effets :
    Code:
            if(heure >= 8 && heure < 19){
              $("#pun-logo img,#i_logo,#logo img").attr("src", "ADRESSE FOND JOUR");
              $("body").css("background-image", "url('ADRESSE FOND JOUR')");
            }




    AUTRES :


    Bien que cette astuce ait été fait avec la bannière et le fond en tête, il faut comprendre que cela peut fonctionner pour n'importe quoi.

    Petit exemple où je veux qu'un bloc avec l'id "bloc_bleu" devienne rouge de 8 à 19h :
    Code:
    /*Partie html*/
    <div id="bloc_bleu">Je suis un bloc bleu qui devient rouge de 8 à 19h.</div>

    /*Partie javascript*/
    jQuery(document).ready(function(){var date = new Date();
            var heure = date.getHours();
            if(heure >= 8 && heure < 19){
              $("#bloc_bleu").css("background-color", "red");
            }
    });

    Petit exemple où je veux qu'une image avec l'id "image_quelconque" change d'images de 8 à 19h :
    Code:
    /*Partie html*/
    <img id="image_quelconque" src="ADRESSE FOND NUIT" />

    /*Partie javascript*/jQuery(document).ready(function(){var date = new Date();
            var heure = date.getHours();
            if(heure >= 8 && heure < 19){
              $("#image_quelconque").attr("src", "ADRESSE FOND JOUR");
            }
    });

    Bref, on sélectionne notre "id" avec le $("#JeSuisUnId") au début en changeant le "JeSuisUnId" par le nom de l'id de notre bloc/image.
    Ensuite, on utilise .attr("src", "ADRESSE FOND JOUR"); pour changer l'adresse de l'image (seulement pour les images).
    Ou, on utilise .css("propriété", "valeur"); pour changer une valeur dans le css, que cela soit le background-image, la couleur de l'écriture, etc.




    CONSEILS SUPPLEMENTAIRES :
    - En cas de problème, vérifiez bien tous les signes de ponctuation
    - Pour faire apparaître/disparaître un élément, jouez sur la propriété display (je pense notamment à display: none; pour faire disparaître votre bannière)


    Dernière édition par Neva le Dim 19 Oct 2014 - 0:55, édité 4 fois
    avatar
    Wizzard
    MasculinAge : 18Messages : 5

    le Dim 25 Sep 2016 - 12:59

    Merci pour ce tutoriel !
    avatar
    Akina-chan
    FémininAge : 23Messages : 138

    le Lun 26 Sep 2016 - 12:38

    Super ! <3 Merciii <3
    avatar
    noksye
    FémininAge : 25Messages : 51

    le Mar 27 Sep 2016 - 0:44

    Merci !
    avatar
    HysteriaOnArt
    FémininAge : 28Messages : 9

    le Mar 27 Sep 2016 - 15:51

    Merci beaucoup :hug:
    avatar
    Hancok
    FémininAge : 32Messages : 940

    le Mar 27 Sep 2016 - 16:56

    C'est une idée pas mal^^, merci pour les codes et cette idée Very Happy





    avatar
    Mystigri
    FémininAge : 14Messages : 97

    le Mer 5 Oct 2016 - 18:03

    Génial, c'est super, merci !



    avatar
    Minzy
    FémininAge : 21Messages : 184

    le Sam 15 Oct 2016 - 12:41

    Merci :)
    avatar
    Wolf Valley
    FémininAge : 17Messages : 67

    le Sam 15 Oct 2016 - 18:48

    Merci!
    avatar
    Likau
    MasculinAge : 22Messages : 324

    le Dim 16 Oct 2016 - 17:13

    Sympa ça Very Happy
    Darouine Lius
    MasculinAge : 27Messages : 65

    le Ven 28 Oct 2016 - 14:05

    trop top merci
    avatar
    Idylle
    FémininAge : 26Messages : 22

    le Lun 7 Nov 2016 - 20:50

    Merciiii !
    avatar
    Rosedesvents
    FémininAge : 30Messages : 90

    le Mar 6 Déc 2016 - 20:08

    Original! Je vais tester ça Very Happy Merci beaucoup
    avatar
    Lya F.
    MasculinAge : 18Messages : 57

    le Sam 10 Déc 2016 - 17:31

    Merci Wink
    avatar
    Oxilus
    MasculinAge : 26Messages : 5

    le Lun 19 Déc 2016 - 20:23

    Merci à toi !
    avatar
    mijako
    FémininAge : 24Messages : 81

    le Dim 8 Jan 2017 - 1:16

    merciii
    avatar
    Pull en Laine qui Gratte
    FémininAge : 12Messages : 70

    le Mar 10 Jan 2017 - 18:08

    merci !
    avatar
    Jynnea
    FémininAge : 22Messages : 92

    le Mer 11 Jan 2017 - 4:55

    Merci!!!
    avatar
    Invité

    le Ven 20 Jan 2017 - 19:30

    c est trop fort !! merci beaucoup
    En ligne
    avatar
    Ocean Lounge.
    FémininAge : 23Messages : 113

    le Mar 7 Fév 2017 - 0:29

    J'suis curieuse de voir ça. Merci pour l'astuce !
    avatar
    Michi-Sushi
    FémininAge : 23Messages : 38

    le Mar 14 Fév 2017 - 0:55

    Vraiment une superbe idée ça ! Bravo et merci Razz



    avatar
    Cornélius
    MasculinAge : 18Messages : 12

    le Ven 17 Mar 2017 - 1:01

    Merci ! enfin je suppose vue que je vois pas encore le tuto :/
    avatar
    Cannelle Cannelle
    FémininAge : 18Messages : 14

    le Lun 3 Avr 2017 - 11:06

    Oh c'est génial ça comme idée, merci !
    avatar
    Ajartielle
    FémininAge : 28Messages : 87

    le Mar 4 Avr 2017 - 2:03

    Je suis curieuse ! Je sais pas si ça me servira, mais ça m'a l'air d'un petit plus qui peut être marrant. ^^
    Contenu sponsorisé


      La date/heure actuelle est Sam 29 Avr 2017 - 23:24