Steffen: Per JS Link für Druck ändern

Hallo Forumleser,

ich habe derzeit eine Druckversion in CSS erstellt. Nun brauch ich aber die gleiche Seite in einer anderen Druckbaren Version.

Nun kommt auch das Problem. Wie kann ich für den Link die 2te Druckadresse mitteilen? Dachte ich mir machst du es über JS und hab in im Netz gesucht. Heraus kam das hier:

<link rel="stylesheet" type="text/css" href="./style.css" media="screen" />
<link rel="stylesheet" type="text/css" href="./print.css" media="print" />

<script type="text/javascript">
function chg_print(id_print){

if(id_print="0"){
  document.getElementsByTagName("link")[1].href = "./print2.css";
  print(this.document);
 }else{
  document.getElementsByTagName("link")[1].href = "./print.css";
 }
}

Was jedoch leider nicht klappt. Er nimmt immernoch die print.css als Druckversion.

Gibt es eine einfachere Lösung bzw wo liegt mein Denkfehler.

Danke euch schonmal für die Hilfe.

Steffen

  1. Hi,

    Gibt es eine einfachere Lösung bzw wo liegt mein Denkfehler.

    Von dem gezeigten Source, ist nur ein Punkt "kritisch": Es scheint, als ob Du das Sheet wechselst, und anschließend sofort druckst.

    Das geht (generell) nicht! Layoutänderungen müssen erst vom Browser verarbeitet. Ändere also den URL, und initiere den Druck ein wenig zeitversetzt mittels setTimeout()

    Gruß, Cybaer

    --
    Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
    (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)