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 :

[POO] Problème avec setInterval/méthodes d'écriture


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 9
    Points : 12
    Points
    12
    Par défaut [POO] Problème avec setInterval/méthodes d'écriture
    Bonjour à tous.
    Je viens de me lancer dans l'intégration de javascript dans mes chtits codes PHP/XHTML.
    Seulement, ce n'est pas sans difficulté.
    Je souhaite, par exemple et pour commencer, afficher en temps réel l'heure (H:i:s, heure:minute:seconde).
    La fonction semble correcte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // récupération de la datation horaire dynamique
    function horodator()
    {
    	var datesu= new Date;
    	var heure=datesu.getHours();
    	var minute=datesu.getMinutes();
    	var second=datesu.getSeconds();
    	if (second<10){second="0"+second;}
    	if (minute<10){minute="0"+minute;}
    	if (heure<10){heure="0"+heure;}
    	document.write(heure+":"+minute+":"+second);
    }
    Cette fonction est dans un fichier js1.js, lui-même dans un dossier javascript.
    L'appel à ce fichier, contenant ces déclarations de fonctions se trouve dans le <head> de la page.
    Sauf que.
    L'appel, lui, se pose dans le corps de la page. Et c'est cela qui semble mal fonctionner.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Heure Serveur: <script language="Javascript">setInterval("horodator()", 1000);</script><br />
    A la base, j'ai changé le document.write en write. Cela a eu pour effet le plantage simple.
    Sur ces forums, j'ai trouvé par la suite document.body.innerHTML. Cela fonctionnait, comme document.write.

    La problème ?

    Cet appel, s'il fonctionne avec document.write et document.body.innerHTML, semble "gommer" tout le reste de la page, qui est alors royalement ignoré.

    Que se passe-t'il ? Comment puis-je résoudre cela ?

    Merci d'avance.


    Lpu8er

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    applique le innerHTML à un element sur la page un div par exemple ...

  3. #3
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Heure Client: <div id="horodatorDiv"></div><script language="Javascript">setInterval("horodator()", 1000);</script>
    <br />
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // récupération de la datation horaire dynamique
    function horodator()
    {
    	var datesu= new Date();
    	var heure=datesu.getHours();
    	var minute=datesu.getMinutes();
    	var second=datesu.getSeconds();
    	if (second<10){second="0"+second;}
    	if (minute<10){minute="0"+minute;}
    	if (heure<10){heure="0"+heure;}
    	document.getElementById("horodatorDiv").innerHTML=(heure+":"+minute+":"+second);
    }

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 9
    Points : 12
    Points
    12
    Par défaut
    Effectivement, cela fonctionne.
    Il est donc impossible de "poser" une écriture js n'importe où, on est obligé de définir l'endroit (POO)... Merci encore.

    Pour heure serveur/client, c'est l'habitude de bosser en php... Qui lui, est un langage serveur XD

    Merci à vous !

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

Discussions similaires

  1. [PHP 5.3] [POO]Problème avec une méthode statique
    Par yann18 dans le forum Langage
    Réponses: 6
    Dernier message: 25/05/2011, 19h32
  2. Problème avec la méthode request.form()
    Par sam.fet dans le forum ASP
    Réponses: 2
    Dernier message: 11/08/2006, 17h11
  3. [POO] Problème avec l'utilisation de classes.
    Par sekiryou dans le forum Langage
    Réponses: 3
    Dernier message: 16/02/2006, 18h54
  4. problème avec la méthode getElementById() dans Firefox
    Par matrouba dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/12/2005, 08h55
  5. Problème avec la méthode pack()
    Par tomca dans le forum Langage
    Réponses: 5
    Dernier message: 15/09/2005, 10h58

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