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 : 18564

    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
    Tempy
    FémininAge : 18Messages : 76

    le Dim 7 Juin 2015 - 19:40

    ça à l'air bien pratique !
    J'utilise ♥
    avatar
    Fame
    MasculinAge : 27Messages : 224

    le Ven 19 Juin 2015 - 2:45

    merci, j'en avais justement de besoin. Very Happy
    avatar
    Shaneliae
    FémininAge : 20Messages : 790

    le Ven 19 Juin 2015 - 10:46

    Super original ! J'adore ♡



    avatar
    picka234
    Age : 52Messages : 440

    le Ven 19 Juin 2015 - 19:53

    merci



    avatar
    Itachi28
    FémininAge : 20Messages : 47

    le Mer 24 Juin 2015 - 21:17

    Merci ! :3
    avatar
    Allèle
    FémininAge : 24Messages : 56

    le Mer 1 Juil 2015 - 11:43

    Waw, c'est possible ça ?
    avatar
    Flitch
    MasculinAge : 28Messages : 45

    le Jeu 9 Juil 2015 - 1:07

    Ho merci! Je connaissait pas cette fonction!
    avatar
    Hylia
    FémininAge : 16Messages : 96

    le Lun 13 Juil 2015 - 18:47

    Merci!



    avatar
    Ryukaï
    MasculinAge : 19Messages : 607

    le Jeu 23 Juil 2015 - 19:15

    Merci Wink je suis curieux de savoir comment faire



    avatar
    Sweet Angel
    FémininAge : 34Messages : 145

    le Lun 3 Aoû 2015 - 10:44

    J'ai hâte de lire ça, merci
    avatar
    Kelalin
    FémininAge : 24Messages : 1488

    le Lun 3 Aoû 2015 - 11:09

    Merci pour le partage ! ヽ(;▽;)ノ
    avatar
    naah
    FémininAge : 23Messages : 70

    le Mar 4 Aoû 2015 - 15:44

    Génial o/
    avatar
    rosebleudu10
    FémininAge : 27Messages : 186

    le Dim 16 Aoû 2015 - 19:10

    merci
    avatar
    Zorane
    MasculinAge : 25Messages : 67

    le Lun 24 Aoû 2015 - 21:58

    Merci
    avatar
    Vani
    FémininAge : 33Messages : 149

    le Lun 24 Aoû 2015 - 22:28

    Eh mais c'est trop cool ça *__*
    avatar
    crapounet
    MasculinAge : 91Messages : 7

    le Mar 25 Aoû 2015 - 9:55

    Un grand merci à toi cheers
    avatar
    ninoute3012
    FémininAge : 23Messages : 67

    le Lun 31 Aoû 2015 - 12:04

    Je veux essayer :)
    avatar
    Kyu
    FémininAge : 17Messages : 42

    le Mar 1 Sep 2015 - 15:34

    Merci beaucoup pour ce code ♥ !
    avatar
    Ciel H.
    FémininAge : 20Messages : 50

    le Dim 20 Sep 2015 - 17:59

    Merci o/
    avatar
    TiGraou
    MasculinAge : 23Messages : 208

    le Lun 21 Sep 2015 - 16:39

    Merci
    avatar
    Youp
    FémininAge : 22Messages : 574

    le Mar 22 Sep 2015 - 1:48

    C'est super intriguant, j'aimerais voir ça ! Merci Neva ^^



    avatar
    Kuvera
    FémininAge : 23Messages : 30

    le Mer 30 Sep 2015 - 21:02

    merci !
    avatar
    Adrosh
    MasculinAge : 16Messages : 17

    le Dim 4 Oct 2015 - 12:13

    Merci
    avatar
    Louchita
    FémininAge : 24Messages : 125

    le Dim 4 Oct 2015 - 19:06

    Merci c'est justement ce dont j'avais besoin! ^^



    avatar
    Dreamyland
    FémininAge : 20Messages : 87

    le Lun 5 Oct 2015 - 13:06

    Merci *^*
    Contenu sponsorisé


      La date/heure actuelle est Jeu 25 Mai 2017 - 22:05