Ludwig Ruderstaller: Seite kann unter Netscape nicht ausgedruckt werden

Hallo,

Heute hab ich mal ein problem, das ich alleine nicht lösen kann, darum bitte ich um eure hilfe:

http://www.horizont.at
Diese Seite verwendet ein Redaktionssystem (der code schaut dementsprechend schaurig aus) Die Seiten werden zwar unter Netscape (4.x) dargestellt aber ein ausdrucken ist NICHT möglich. Bisher kannte ich dieses Phänomen nur dann wenn auch die seite nicht angezeigt wurde. (zb. offene table o.ä.)

Hat jemand einen Tip für mich ? Wo ich suchen sollte ?

Unter IE 4.* - IE 6.0 gehts ohne probleme, mit Mozilla 0.6 - 0.91 auch.

Suche schon seit mehreren Tagen (sic!) nach dem Problem.

Wäre nett wenn ihr etwaige antworten auch an meine Email schicken könntet.

-Thanks for all the Fish-
( in memorian Douglas Adams )

  1. Hallo Ludwig!

    Der Source-Code schaut in meinem Netsi (4.77) ziemlich komisch aus. Nach dem ersten <script> schneidet er den Javascript-code plötzlich (willkürlich!) ab und macht dann mit der Ausgabe von document.write weiter. Das <script> wird nicht mehr geschlossen! Das könnte die Ursache sein, dass er es nicht ausdrucken will, warum er es aber dann überhaupt anzeigt ... ?!?

    <!-- Beginn der oberen Zelle (werbung) //-->
    [...]
        <td valign="top" align="left" bgcolor="#CCCCCC" width="468" height="60" rowspan="3"><!-- SITE ID:  //--><script language="JavaScript">

    now = new Date();
    random = now.getTime();
    target1="http://classic.adlink.de/hserver/ATCATEGORY=HOMEPAGE/SITE=AT_HORIZONT_AT/AREA=HOMEP</NOLAYER><ILAYER id=banner1 visibility=hide width=468 height=60></ILAYER>

    </NOLAYER><ILAYER id=banner2 visibility=hide width=1 height=1></ILAYER>

    Genau bei target1=[...]AREA=HOMEP[...] wird das Javascript unterbrochen!

    Unter IE 4.* - IE 6.0 gehts ohne probleme, mit Mozilla 0.6 - 0.91 auch.

    Da sieht der Quelltext auch ganz normal aus, alle <script>s sind geschlossen. Das ist sicherlich einer diese Fehler, den man Tagelang sucht, und sich dann herausstellt, dass ein ' oder zuviel // dahinterstecken ;-)

    Hoffe dir nichts gesagt zu haben was du eh schon weisst ,-) und du den Fehler bald findest!

    lg bernhard

  2. Hallo Ludwig

    Diese Seite verwendet ein Redaktionssystem (der code schaut dementsprechend schaurig aus) Die Seiten werden zwar unter Netscape (4.x) dargestellt aber ein ausdrucken ist NICHT möglich. Bisher kannte ich dieses Phänomen nur dann wenn auch die seite nicht angezeigt wurde. (zb. offene table o.ä.)

    hm, auch mit einem solchen System kann man vernünftige Quelltexte schreiben :-)

    Hat jemand einen Tip für mich ? Wo ich suchen sollte ?

    Du bist über den document.write-Bug vom Netscape gestolpert. Dagegen hilft tatsächlich nicht viel.

    In dem Moment, wo innerhalb eines Quelltextes ein document.write auftaucht, werden alle auch dynamisch geschriebene Tags beim Drucken interpretiert.

    Teste zum Verständnis des Verhaltens einfach mal das folgende Script und drucke es aus.

    <html>
    <head>
    <title></title>
    </head>
    <body>

    <b>fett</b>
    <script type="text/javascript">
    <!--
    document.writeln("123");
    //-->
    </script>
    <span><b>fett</b>  </span>
    </body>
    </html>

    Abhilfe:

    hm, du hast mehrere Varianten:

    a) du bietest eine Druckversion an
    b) du verzichtest auf document.write(), da du iframes und ilayers verwendest, kannst du doch einfach den src ändern.
    c) eine auch funktionierende Lösung (getestet NN 4.6 unter NT):

    alles mit document.write zu schreibenden Elemente in eine Variable speichern. Diese dann so ausgeben:

    <script>
    <!--
    document.writeln(x);
    //-->
    </script><span></span>

    ganz wichtig das <span></span> dahinter. Und natürlich funktioniert das nur einmal.

    Viele Grüße

    Antje

  3. Hallo,

    danke an Antje,Bernhard und Jürgen für eure antworten.

    Das JavaScript kommt von der Advertising Firma des Kunden, und es ist mir strikt untersagt (sic!) an dem JS etwas zu ändern. Ich habe eure möglichen Lösungen an den Zuständigen dieser Advertising firma gemailt... und hoffe die lösen das problem .....

    Vielen Dank noch mal
    Ludwig