Felix Riesterer: Link im iframe soll parent-Dokument positionieren

Beitrag lesen

problematische Seite

Lieber Linuchs,

Wenn ich bei jedem Problem kneifen würde, wäre ich noch blutiger Anfänger.

wenn Du ohne Not iframes verwendest, vielleicht auch..?

Die iframe-Inhalte sind komplette HTML-Dokumente, die auch einzeln für eine Lose-Blatt-Sammlung gedruckt werden können.

Aha, Du willst Dir die Mühe nicht machen, diese "lose Blattsammlung" anders zu arganisieren. Jetzt verstehe ich. Nun, da ist vielleicht die bisherige Lösung für die Blattsammlung nicht gut!

Warum mit Kanonen (Intranet-Server) auf Spatzen (einfache HTML-Anzeige/Druck) schießen? Keine gute Idee.

Nur weil ich jetzt als "Gag" diese Master/Slave Idee mit Ajax habe, mag ich nicht hunderte von Liedern "umschreiben".

Wie kommt man denn an die "einfache HTML-Anzeige"? Und mit JavaScript und CSS kann man die Druckausgabe eines Dokumentes wunderbar beeinflussen:

<!doctype html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Liederbuch</title>
  <style>
   article:not(.current) {
    display: none;
   }
   @media print {
    .screen {
     display: none;
    }
   }
   @media screen {
    .print {
     display: none;
    }
   }
  </style>
 </head>
 <body>
  <main>
   <h1 class="screen">Liederbuch</h1>
   <p class="screen">
    Blättern Sie:
    <button id="prev">« vorherige Seite</button>
    <button id="next">nächste Seite »</button>
   </p>
   <article class="current">
    <h2>Ich geh' mit meiner Laterne</h2>
    <p>...</p>
   </article>
   <article>
    <h2>Sankt Martin</h2>
    <p>...</p>
   </article>
  </main>
 </body>
</html>

Wenn Du nun mit JavaScript die Klasse current von einem article zu einem anderen überträgst, dann wird nur dieses angezeigt und gedruckt. Obendrein kannst Du Elemente vor der Druck- oder Bildschirmausgabe "verstecken", indem Du die Klassen print und screen analog verwendest.

Liebe Grüße,

Felix Riesterer.