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 :

Définir page dans un frame sur un onload


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut Définir page dans un frame sur un onload
    Bonjour,

    Voici mon problème, j'ai une page qui contient trois frames. Je veux passer au frame du milieu un chemin vers une page html Ex: course/documents/page0004.html.

    Puisque cette page peut varier d'une ouverture à une autre j'essais de faire une function dans la section <script> et par la suite d'en faire l'appel dans la balise <Body>. Rien à faire sa ne fonctionne pas.

    Voici une partie du code de ma page

    code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function StartPage()
    {
    window.frames[1].location.href="course/documents/page0004.html"; 
    }

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    </SCRIPT>
    </HEAD>
    <Body onload="StartPage();">
    <FRAMESET COLS="*,640,*" BORDER=0 FRAMEBORDER=0>
    <FRAME FRAMEBORDER=0 SCROLLING="NO" Src="course/documents/border.html" NORESIZE>
    <FRAMESET ROWS="40,390,60,*" BORDER=0 FRAMEBORDER=0>
    <FRAME NAME="TP2TOP" FRAMEBORDER=0 SCROLLING="NO" Src="" NORESIZE>
    <FRAME NAME="TP2CLNT" FRAMEBORDER=0 SCROLLING="YES" NORESIZE>
    <FRAME NAME="TP2BAR" FRAMEBORDER=0 SCROLLING="NO" Src="course/documents/ctrl.html" NORESIZE>
    <FRAME FRAMEBORDER=0 SCROLLING="NO" Src="course/documents/border.html" NORESIZE>
    </FRAMESET>
    <FRAME FRAMEBORDER=0 SCROLLING="NO" Src="course/documents/border.html" NORESIZE>
    </FRAMESET>
    </HTML>

  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 : 54
    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.frames[1].src="course/documents/page0004.html";

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut
    Bonjour,

    J'ai un erreur dans la balise body, que je la place tout de suite après </Head> ou après le dernier </frameset>. La page ne s'affiche pas dans mon frame et dans le error on page en bas de la page il est inscrit object expected et le numéro de la ligne ou ce situe mon <body>. Est-ce que tu as une idée pourquoi ?

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Citation Envoyé par nancyvoyer Voir le message
    il est inscrit object expected et le numéro de la ligne ou ce situe mon <body>
    1° erreur : il n'y a pas de </body> dans ta page
    2° erreur : il ne faut pas de <body> dans la page contenant le <frameset> il me semble

    Par contre, pourquoi vouloir faire ça dans le onload ???

    Tu viens de charger ta page : génère la bonne adresse directement sur le serveur
    S'il y a une raison (qui m'échappe) de faire comme ça, te reste plus qu'à charger une "fausse" page dans ta frame et modifier son self.location.href dans le onload de ce body là ....

    A+

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut
    Bonjour,

    Je vais essayer de t'expliquer pourquoi je fais ça dans un onload.

    Lorsque je part le fichier index.html, il construit les 3 frames et devrait aller chercher le numéro de la page de l'apprenant lorsqu'il a quitté la formation.

    En plus simple, j'ai un outil pour faire rouler des formations scorm, lorsque l'étudiant entre pour la première fois il commence à la page 1, s'il sort de la formation à la page 18, je veux que lorsqu'il va retourner dedans, qu'il puisse continuer à la page 18. C'est pour ça que je le fait dans un onload. S'il existe d'autre façon de faire j'aimerais bien le savoir. Je ne suis pas très callé dans ce genre de code. Merci

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par nancyvoyer Voir le message
    s'il sort de la formation à la page 18, je veux que lorsqu'il va retourner dedans, qu'il puisse continuer à la page 18. C'est pour ça que je le fait dans un onload.
    Oui mais le fait qu'il doive reprendre à la page 18 est bien stocké sur le serveur, non ?
    Dans ce cas, tu as sur le serveur l'info nécessaire pour générer directement la bonne url dans l'iframe.

    Seul cas où le onload se justifie : si tu ne stockes tout ça que dans des cookies, sur le poste de formation (mais là c'est un peu dangereux si le poste est standard)

    EDIT : pour l'instant, la page pointée dans StartPage(), tu la récupères comment ?

    A+

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut
    Oui l'information est stocké dans la base de données du logiciel de formation.

    Je récupère l'information avec cette fonction

    Code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LastLocation = LMSGetValue('cmi.core.lesson_Location');
    Par la suite dans ma fonction StartPage je veux lui passé
    window.frames[1].src="course/documents/page000"+LastLocation+".html"

    Mais je ne sais pas comment passé cette valeur à mon frame

    Merci

  8. #8
    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 : 54
    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
    Par défaut
    Citation Envoyé par nancyvoyer Voir le message
    Oui l'information est stocké dans la base de données du logiciel de formation.
    Donc ce tte valeur est connue (du moins accessible) lors de la création de la page sur le serveur, donc on en revient à :
    Citation Envoyé par E.Bzz
    génère la bonne adresse directement sur le serveur

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut
    C'est ça que je ne sais pas comment faire. Puisque la balise body me donne un erreur et que l'adresse source devrait déjà être dans la balise du frame

  10. #10
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    J'ai un doute d'un coup : tu utilises bien PHP sur ton serveur ?

    Tu n'as pas que des pages statiques ?

    A+

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut
    Oui je n'ai que des pages statiques, c'est pour ça que je voulais lui donner le bon numéro de page au onload

Discussions similaires

  1. bouton pour afficher une page dans la frame droite
    Par mouss4rs dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/04/2008, 15h30
  2. Ouverture d'une page dans une frame
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 10/03/2008, 17h55
  3. [flash] ouvrir une page dans une frame différente
    Par viena dans le forum Intégration
    Réponses: 6
    Dernier message: 01/08/2007, 15h54
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Rediriger deux pages dans deux frames
    Par Tapioca dans le forum ASP
    Réponses: 6
    Dernier message: 06/07/2004, 16h27

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