Javascript - fond du forum changeant

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Javascript - fond du forum changeant

Message par GlobeTrotters le Ven 2 Sep 2011 - 22:34

Bonjour; Bonsoir;

Je fais face à un petit dilemme. En fouillant sur le net pendant un bon moment, j'ai enfin trouvé un code Javascript sympa qui me permettrait de changer l'image en fonction de l'heure (un pour la jour et un pour la nuit par exemple). J'ai essayé de créer une page html à mettre en iframe pour le fond; mais ça ne marche pas. Je pense que je devrais inclure le fichier dans un template, mais là, j'apprécierais bien quelques petits conseils et de l'aide pour réussir à l'intégrer comme image de fond de mon forum.

Code:
<script type="text/javascript">
var currentTime = new Date().getHours();
if (MATIN <= currentTime && currentTime < SOIR) {
    if (document.body) {
        document.body.background = "FOND1";
    }
}
else {
    if (document.body) {
        document.body.background = "FOND2";
    }
}

</script>


Merci d'avance à tous ceux qui se pencheront sur la question Wink

GlobeTrotters
Nouveau membre

Messages : 4
Inscrit(e) le : 02/09/2011

http://globetrotters.bbactif.com/
GlobeTrotters a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par Ea le Sam 3 Sep 2011 - 0:51

Bonjour,


Vous pouvez juste mettre ce script sur toutes les pages :

Code:
$(function(){
   var currentTime = new Date().getHours();
   var valueFond;

   if (7 <= currentTime && currentTime < 19) valueFond= "FOND1";
   else valueFond = "FOND2";

   document.body.background= valueFond;
});
Les scripts s'exécutent avant le contenu de la page donc le code doit être mis dans un :

Code:
$(function(){
  /* le code */
});
Afin qu'il s'exécute une fois les éléments du contenu de la page connu.

Ea
Aidactif
Aidactif

Messages : 23420
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par GlobeTrotters le Sam 3 Sep 2011 - 10:44

Bonjour,

Merci de répondre aussi vite Smile
Ensuite, il y a quelque chose que je ne comprends pas. J'ai mis le code suivant dans les templates, sans succès. J'ai essayé de l'insérer comme Javascript en l'appliquant bien sur toutes les pages... Toujours rien.
Qu'ai-je manqué pour que cela fonctionne ?

Merci d'avance.

GlobeTrotters
Nouveau membre

Messages : 4
Inscrit(e) le : 02/09/2011

http://globetrotters.bbactif.com/
GlobeTrotters a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par Ea le Sam 3 Sep 2011 - 10:47

Si c'est le forum de votre profil, vous aviez un template overall_header modifié avant la mise à jour permettant de mettre des codes javascript et il faut faire la modification donné ici pour qu'ils fonctionnent Wink

Ea
Aidactif
Aidactif

Messages : 23420
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par GlobeTrotters le Sam 3 Sep 2011 - 10:52

En fait, je fais tout sur un autre forum http://magnificent.bbactif.com/
Le template est bien à jour ici; mais, impossible de faire fonctionner le Javascript :/

GlobeTrotters
Nouveau membre

Messages : 4
Inscrit(e) le : 02/09/2011

http://globetrotters.bbactif.com/
GlobeTrotters a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par Ea le Sam 3 Sep 2011 - 14:23

Ah oui je n'avais pas fait attention en pensant que le code de départ était environ bon, mais c'était probablement juste pour une couleur de fond.

Enfin pour mettre une image ça serait plutôt :

Code:
$(function(){
  var currentTime = new Date().getHours();
  var valueFond;
 
  if (7 <= currentTime && currentTime < 19) valueFond= "FOND1";
  else valueFond = "FOND2";
 
  document.body.style.backgroundImage= "url("+valueFond+")";
});

Ea
Aidactif
Aidactif

Messages : 23420
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par GlobeTrotters le Mar 6 Sep 2011 - 19:05

Bonjour/Bonsoir;

Alors apparemment tout fonctionne. Merci beaucoup Smile
Je voulais savoir si il était possible d'appliquer le même système pour un changement de feuille CSS ?
Je présume que ça doit être possible, et qu'il suffit de changer la valeur ( en reprenant un addstyle comme le sélecteur de thème ?).

Merci en tous cas Smile

GlobeTrotters
Nouveau membre

Messages : 4
Inscrit(e) le : 02/09/2011

http://globetrotters.bbactif.com/
GlobeTrotters a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par Ea le Mar 6 Sep 2011 - 20:53

Cela donnerait alors quelque chose comme ceci :

Code:
(function() {
  var currentTime = (new Date).getHours();
  var valueCss;
  if(7 <= currentTime && currentTime < 19) {
    valueFond = "adresse1.css"
  }else {
    valueCss = "adresse2.css"
  }
  $("head").append('<link rel="stylesheet" type="text/css" id="tstyle" href="' + valueCss + '" />')
})();
Dans le sélecteur de thème le addStyle ne fait que rajouter une adresse / nom pour un css dans la liste des styles.

C'est juste la partie :

Code:
$("head").append('<link rel="stylesheet" type="text/css" id="tstyle" />');

if(my_getcookie("sstyle")) { $("#tstyle").attr("href", my_getcookie('sstyle')); }
Qui ajoute le "css" ( si un css est choisi ).

Ea
Aidactif
Aidactif

Messages : 23420
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Javascript - fond du forum changeant

Message par Invité le Mer 14 Sep 2011 - 10:50

Bonjour,

Afin de faciliter la gestion des problèmes, si votre problème est résolu, pensez à :
  • éditer votre premier message,
  • cocher l'icône résolu
  • Et enregistrer en cliquant sur


Vous pouvez également remercier les personnes qui vous ont aidé, en cliquant sur le bouton

A bientôt sur ForumActif Smile

Invité
Invité


Invité a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum