3 Stimmen

Gibt es eine Cross-Browser-Weg kann ich ein Ereignis nach dem Drucken mit Javascript auslösen?

Ich muss also in der Lage sein, einen jQuery UI-Dialog zu drucken. Meine Lösung bisher hat mich dazu geführt, eine Schaltfläche "Drucken" zu erstellen, die eine neue <iframe> mit dem Inhalt des Dialogs gefüllt und dann ausgedruckt.

Ich würde gerne die Möglichkeit haben, die <iframe> sobald der Druck abgeschlossen ist. Gibt es eine Möglichkeit, dies zu tun? Ich weiß, es gibt ein onAfterPrint-Ereignis in IE, aber ich brauche dies in allen Browsern zu arbeiten.

Danke!

Edita: Ich schätze die alternativen Vorschläge, aber ich lief in alle Arten von Problemen versuchen, CSS-Regeln verwenden, um jQuery-Dialoge zu drucken. Auf Seiten mit viel Inhalt und mehreren Dialogen würde die Struktur des Overlays und anderer Elemente dazu führen, dass zusätzliche leere Seiten gedruckt werden. Ich habe viele Kombinationen von { visibility: hidden; } und { display: none; } ausprobiert, konnte aber keine Lösung finden.

5voto

Dark Falcon Punkte 42375

Haben Sie erwogen, ein spezielles Stylesheet mit dem Attribut media="print" zu erstellen? Mit diesem Stylesheet können Sie alles andere auf der Seite ausblenden, was nicht gedruckt werden soll, und die Formatierung nach Bedarf zurücksetzen. (Setzen Sie zum Beispiel die Positionierung der Box von absolut auf statisch zurück)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X