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] Function javascript ne fait rien appelée onLoad


Sujet :

JavaScript

  1. #1
    Membre actif Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Points : 254
    Points
    254
    Par défaut [POO] Function javascript ne fait rien appelée onLoad
    Bonjour,

    J'ai une page qui s'ouvre et affiche un objet (fichier PDF) afin de l'imprimer. Le fichier devrait s'imprimer automatiquement au chargement de la page. Voici donc mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    <html>
      <head>
        <script type="text/javascript">
          function imprimer() {
            var f = document.getElementById('embfile');
            f.focus();
            f.print();
          }
        </script>
      </head>
      <body onLoad="imprimer()">
        <div>
          <input type="button" id="imp" value="Imprimer" onClick="imprimer()">
          <object id="embfile" name="embfile" data="<?=urldecode($_GET["file"])?>"></object>
        </div>
      </body>
    </html>
    Au chargement de la page, rien ne se passe. Pourtant ça fonctionne lorsque j'appuie sur le bouton Imprimer et ça grâce à la même fonction. J'aimerais savoir pourquoi ça ne fonctionne pas et comment faire pour arranger cela.

  2. #2
    Membre averti Avatar de Sacha999
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Points : 350
    Points
    350
    Par défaut
    A mon avis, au moment ou il appelle OnLoad, le pdf n'est pas entièrement chargé. Un ptit coup de ca résoud le probleme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <body onLoad="setTimeout('imprimer()',1000);">
    Par contre je présume que plus le pdf est gros, plus il mettra de temps à charger, et plus tu devras augmenter le timeout, enfin a tester quoi

  3. #3
    Membre actif Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Points : 254
    Points
    254
    Par défaut
    Merci beaucoup, je ne merappelles jamais de cette fonction. Encore une fois je me demande pourquoi onLoad ne devrait pas toujours attendre le chargement de la page...

  4. #4
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    Citation Envoyé par FrankOVD Voir le message
    Encore une fois je me demande pourquoi onLoad ne devrait pas toujours attendre le chargement de la page...
    J'vais peut-être dire une bétise, mais j'ai l'impression que cela tient au fait que ton PDF soit dans une balise object. Le chargement de cet object ne doit pas être synchrone.

    Un truc à essayer: mettre l'object dans une cellule (<TD>), avec une ligne (<TR>) vide à la suite. Normalement, l'événement Onload devrait se produire seulement après le chargement complet du tableau puisque le navigateur ne connait pas la taille de ce tableau et ne peut donc pas l'afficher avant d'avoir rencontré la balise </TABLE>.

    Si ça marche, c'est pas vraiment élégant, mais bon...

Discussions similaires

  1. Appel de function JavaScript (jquery) sur une jsp
    Par BILANGA dans le forum jQuery
    Réponses: 4
    Dernier message: 09/01/2015, 14h14
  2. Appel function javascript
    Par eiffel74 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 08/11/2012, 21h41
  3. javascript qui ne fait rien
    Par kate59 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/01/2009, 09h24
  4. Appeller une function javascript de la page mère
    Par Anubis dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/07/2007, 15h22
  5. [Process] pb exec sous unix, ne plante pas mais ne fait rien
    Par NiBicUs dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 10/12/2004, 05h27

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