Frank Pachollek: Nur aktuellen Frame drucken

Hey,

wie kann ich nur das aktuelle Frame ausdrucken?

Nach Aufruf von window.print() muß man ja leider wählen, sobald mehr wie ein Frame da ist.

Man müßte vor dem Ausdruck das Frame zum aktuellen Fenster machen
top.location.href=self.location;
und danach wieder zurück.

Der Ausdruck wird vom Anwender mit

<input type="button" value="Diese Seite drucken" onClick="javascript:drucken();">

veranlaßt.
Hat jemand eine Idee?

Viele Grüße
Frank Pachollek

  1. Hey,

    wie kann ich nur das aktuelle Frame ausdrucken?

    Hat jemand eine Idee?

    Viele Grüße
    Frank Pachollek

    Hallo Frank

    Ich habe leider nur eine sehr unelegante Idee!

    Du könntest die Seite in einem neuen Browserfenster (eventuell ausserhalb des Bildschirms) durch einen einfachen Link öffnen

    <a href="dieseSeite.htm" target="_blank">Drucken</a>
    oder
    <a href="#" onClick="window.open('dieseSeite.htm','fernbed','width=145,height=310,toolbar=0,srollbar=0,status=0,directories=0,menuebar=0,resize=0')">Drucken</a>

    um die Seite dann auch wirklich auszudrucken kannst Du dann z.b. abfragen, ob da ein parent.frame ist und wenn nicht dann Ausdrucken.

    if (parent.frames.length<1){
            alert("ich hoffe jetzt wird gedruckt!");
            drucken();
            }

    Um zu verhindern das die Seite ungewollt beim direkten aufruf der Seite ausgedruckt wird,
    ist eventuell ratsamer beim öffnen noch einen Parameter in der URL zu übergeben z.b.

    <a href="dieseSeite.htm#Druck" target="_blank">Drucken</a>

    var abfagedruck = window.location.href;
    Ergebnis = abfagedruck.search(/#Druck/);
    if(Ergebnis != -1){
                  alert("ich hoffe jetzt wird gedruckt!");
                  drucken();
                  }

    1. Hallo Frank

      Ich habe leider nur eine sehr unelegante Idee!

      Du könntest die Seite in einem neuen Browserfenster (eventuell ausserhalb des Bildschirms) durch einen einfachen Link öffnen

      <a href="dieseSeite.htm" target="_blank">Drucken</a>
      oder
      <a href="#" onClick="window.open('dieseSeite.htm','fernbed','width=145,height=310,toolbar=0,srollbar=0,status=0,directories=0,menuebar=0,resize=0')">Drucken</a>

      um die Seite dann auch wirklich auszudrucken kannst Du dann z.b. abfragen, ob da ein parent.frame ist und wenn nicht dann Ausdrucken.

      if (parent.frames.length<1){
              alert("ich hoffe jetzt wird gedruckt!");
              drucken();
              }

      Um zu verhindern das die Seite ungewollt beim direkten aufruf der Seite ausgedruckt wird,
      ist eventuell ratsamer beim öffnen noch einen Parameter in der URL zu übergeben z.b.

      <a href="dieseSeite.htm#Druck" target="_blank">Drucken</a>

      var abfagedruck = window.location.href;

      »»  Ergebnis = abfagedruck.search(/#Druck/);
      »»  if(Ergebnis != -1){

      alert("ich hoffe jetzt wird gedruckt!");
                    drucken();
                    }

      Hey Wim,

      vielen Dank!

      Werde es gleich mal ausprobieren.

      Bis bald

      Frank Pachollek