Avatar billede benjax Nybegynder
06. september 2001 - 15:03 Der er 5 kommentarer og
1 løsning

Print af åbnet vindue i IE5.5

Hvorfor virker følgende ikke i min browser?

w = window.open();
w.document.write(\"hello world!\");
w.print();

print() metoden bliver bare ignoreret, men hvis jeg lader være med at skrive noget i vinduet (linie 2), så åbner Explorer 5.5 (SP2) fint print-dialogboksen og man kan udskrive en blank side!?

Jeg har så prøvet at lave en <body onload=\"print()\"> i det nye vindue, men det virker heller ikke.

Mvh&tak
benjax
Avatar billede mikkel_robin Nybegynder
06. september 2001 - 15:08 #1
problemet er at open og print bruger samme funktion. tilføj dette i din body:

<body onload=\"window.print()\">
Avatar billede benjax Nybegynder
06. september 2001 - 15:23 #2
>mikkel robin: Næh, det havde jeg prøvet, men det gør ingen forskel, desværre.
Avatar billede tdimhcs Nybegynder
06. september 2001 - 16:11 #3
Prøv den her:

<html>
    <head>
        <meta http-equiv=\"content-type\" content=\"text/html;charset=iso-8859-1\">
        <title></title>
<script language=\"JavaScript\">
<!--   
function printpage() {
if (window.print) {
window.print();
} else {
alert(\'To print this page, select Print Frame from the file menu.\');
}
}
// -->
</script>
       
    </head>

<body onload=printpage();return false\">
   
    test
   
</body>
</html>       

Kurt
Avatar billede benjax Nybegynder
06. september 2001 - 16:31 #4
Tak for indsatsen, men... Nej, det er ikke lige sagen. Det jeg har brug for er følgende:

1) Brugeren trykker på et print-ikon i en side
2) Javascript åbner et nyt vindue og fylder noget HTML heri
3) Det nye vindues indhold udskrives (der må gerne komme en printer-dialogbox frem).

Det behøver i øvrigt kun at fungere med IE5.0+.
Avatar billede jakoba Nybegynder
06. september 2001 - 16:41 #5
w = window.open();
w.document.write(\"hello world!\");
w.document.close();  // fortæl du er færdig med at skrive
w.focus();            // sæt fokus på det vindue
w.print();
Avatar billede benjax Nybegynder
06. september 2001 - 16:55 #6
Tak til jakoba! :O)

Jeg fandt i øvrigt frem til en alternativ metode, som også virker med IE4:

w = window.open(\"\",\"print\",\"\");
w.document.write(\'<html><body>hello world!\');
w.document.writeln(\'<Object id=WBControl width=0 height=0 classid=\"CLSID:8856F961-340A-11D0-A96B-00C04FD705A2\"></object>\');
w.document.writeln(\'</body></html>\');
w.execScript(\"WBControl.ExecWB 6,1\", \"VBScript\");
w.close();
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester