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] Document.open dans IE7 ne marche plus ?


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut [POO] Document.open dans IE7 ne marche plus ?
    Bonjour à tous,
    Depuis que j'ai installé IE7, le code suivant ne fonctionne plus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function displayData(){
    dataWindow=open('','','toolbar=0,directories=0,menu=0,scrollbars=1,location=0,resizable=1,status=0,top=400,left=300,width=600,height=200,menubar=0,dependent=1,hotkeys=0');
    dataWindow.document.open();
    dataWindow.document.write("<HTML><HEAD><TITLE>Mon titre");
    dataWindow.document.write("</TITLE></HEAD><BODY onBlur='window.close();' style='font-family: Arial;'>");
    dataWindow.document.write("bla bla bla");
    dataWindow.document.write("</BODY></HTML>");
    dataWindow.document.close();
    }
    La fonction est appelée de la manière suivante (en svg) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <g onclick="displayData();">
    J'obtiens l'erreur (Script error) suivante :

    Accès refusé.
    Ligne 3045, column 0
    Ce code fonctionne avec les versions antérieures de IE.

    Quelqu'un peut-il m'aider ?

    MercI.

  2. #2
    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
    Par défaut
    Tu te trompes...
    document.open ne veut pas dire que tu peux commencer à écrire et document.close que tu as fini d'écrire....

    document.open c'est la même chose que window.open, à la seule différence près qu'au lieu de renvoyer l'objet WINDOW, il renvoie l'objet DOCUMENT.

    Quant'à document.close, ca n'a jamais existé

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    J'insiste quand même sur le fait que ce script marche sur une version antérieure à IE7 et pas sur IE7...
    Merci FremyCompany pour tes indications mais pourrais-tu être un petit peu plus explicit et m'indiquer, dans ce cas, ce qu'il faut écrire ?

  4. #4
    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function displayData(){
    dataWindow=open('','','toolbar=0,directories=0,menu=0,scrollbars=1,location=0,resizable=1,status=0,top=400,left=300,width=600,height=200,menubar=0,dependent=1,hotkeys=0');
    //dataWindow.document.open();
    dataWindow.document.write("<HTML><HEAD><TITLE>Mon titre");
    dataWindow.document.write("</TITLE></HEAD><BODY onBlur='window.close();' style='font-family: Arial;'>");
    dataWindow.document.write("bla bla bla");
    dataWindow.document.write("</BODY></HTML>");
    //dataWindow.document.close();
    }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    Ok, merci.
    En revanche, ça ne résoud pas le problème d'erreur. J'obtiens toujours le message "Accès refusé".
    Tu vois pourquoi ?

  6. #6
    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
    Par défaut
    C'est ou la ligne 3045 ?

    Sinon, moi j'écrirais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dataWindow=open("about:blank", ....)
    Ou encore mieux, creer sur ton serveur un fichier empty.html à la racine et faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    open("/empty.html",...)

  7. #7
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Citation Envoyé par FremyCompany
    Tu te trompes...
    document.open ne veut pas dire que tu peux commencer à écrire et document.close que tu as fini d'écrire....

    document.open c'est la même chose que window.open, à la seule différence près qu'au lieu de renvoyer l'objet WINDOW, il renvoie l'objet DOCUMENT.

    Quant'à document.close, ca n'a jamais existé
    C'est sur?
    J'ai pourtant vu pas mal de code faire ça...

  8. #8
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    C'est bien la bonne methode pour ecrire dynamiquement le code html entier d'une page

    http://www.w3.org/TR/DOM-Level-2-HTM...ml#ID-72161170

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    Merci pour ces nouvelles précisions.
    Mon problème semble relié au svg (dans lequel j'utilise le JavaScript) : en effet, le code html suivant fonctionne :

    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
    19
    <html>
    <head>
    </head>
    <body>
      <script language="JavaScript">    
    function displayData(){
    dataWindow=open('','','toolbar=0,directories=0,menu=0,scrollbars=1,location=0,resizable=1,status=0,top=400,left=300,width=600,height=200,menubar=0,dependent=1,hotkeys=0');
    dataWindow.document.write("<HTML><HEAD><TITLE>Titre");
    dataWindow.document.write("</TITLE></HEAD><BODY onBlur='window.close();' style='font-family: Arial;'>");
    dataWindow.document.write("bla bla bla");
    dataWindow.document.write("</BODY></HTML>");
    }
      </script>      
     
    <a href="javascript:displayData()">
    	test
    </a>
    </body>
    </html>
    En revanche, l'équivalent en svg me donne toujours l'erreur "Accès refusé". Si quelqu'un sait pourquoi et sait comment résoudre le problème, merci de me le dire. Je vais quand même me tourner aussi vers un forum svg.

  10. #10
    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
    Par défaut
    document.open : http://msdn.microsoft.com/library/de...ods/open_1.asp
    Opens a new window and loads a document specified by a given URL. This method can also be used to open a new window which uses the sUrl and sName parameters to collect the output of the write and writeln methods.

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/10/2009, 18h34
  2. onKeypress avec return false ne marche plus sous IE7
    Par forrestier2003 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 09/10/2008, 15h10
  3. [OOo] import de données xml dans un document open office writer
    Par anouka dans le forum XML/XSL et SOAP
    Réponses: 11
    Dernier message: 02/08/2008, 20h20
  4. Réponses: 6
    Dernier message: 02/06/2008, 10h17
  5. Code qui ne marche plus sur IE7 Beta
    Par Death83 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/03/2006, 00h15

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