Drucken?
Torsten
- html
Hallo,
ich bastel gerad an meiner HP und bin leider noch ziehmlicher Anfänger in HTML.
Ich möchte, wenn der Nutzer auf bild, z.B. drucker.gif klickt, die Seite bzw. ein Formular gedruckt wird. Wie mache ich das?
Freue mich auf jede Hilfe.
Freundliche Grüße
Torsten
Hallo Torsten.
Ich möchte, wenn der Nutzer auf bild, z.B. drucker.gif klickt, die Seite bzw. ein Formular gedruckt wird. Wie mache ich das?
Du kannst das über JavaScript erreichen:
<a href="#" onclick="window.print();return false;">Drucken</a>
Hier der Link zu SelfHTML:
http://de.selfhtml.org/javascript/objekte/window.htm#print
Ich hoffe ich konnte helfen, H2O
Danke, werde das mal versuchen.
Hm, das setzt aber voraus, das der User JS aktiviert hat, oder?
Geht das auch noch anders?
Freundliche Grüße
Torsten
Hi,
Hm, das setzt aber voraus, das der User JS aktiviert hat, oder?
ja.
Geht das auch noch anders?
Sicher: Jeder Browser verfügt über eigene Druckfunktionen (von denen dieser JavaScript-Code ohnehin abhängig ist: er öffnet, falls möglich, den Druckdialog, nicht mehr). Überlasse es einfach dem Benutzer, sie anzuwenden. Das User-Interface nachzuahmen, ist nie eine gute Idee.
Cheatah
Ok, stimmt, letztendlich wird eh der Nutzer entscheiden, ob er es drucken möchte oder nicht.
Danke für die Hilfe!
Schönen Abend noch
Torsten
Hallo,
Danke, werde das mal versuchen.
Hm, das setzt aber voraus, das der User JS aktiviert hat, oder?
Geht das auch noch anders?
Ja über Datei - Drucken im Menü des Browsers. Ich mache das immer so, denn mich stören diese blöden <drucken> Knöpfchen und ich würde da niemals draufdrücken. Die Browser haben nämlich auch eine Vorschaufunktion die ich vor jedem Drucken benutze um zu sehen was ich eigentlich ausdrucken werde.
Mit CSS kann man dann noch schön alles für den Drucker formatieren und unnötiges - wie die Navigation - für den Drucker verschwinden lassen. Hier einige zusatzinfos http://www.alistapart.com/articles/goingtoprint/
Guck dir mal einen meiner Weblogeinträge in der Druckvorschau an, dann weist du was ich meine http://jeenaparadies.de/weblog/2004/august/dog-eat-dog/.
Grüße
Jeena Paradies
Hi,
Guck dir mal einen meiner Weblogeinträge in der Druckvorschau an, dann weist du was ich meine http://jeenaparadies.de/weblog/2004/august/dog-eat-dog/.
das sieht unter Opera 7.53 aber etwas merkwürdig aus, da der Fließtext nach rechts über das Hintergrundbild hinausragt. Ist das ein Kompatibilitätsproblem von Opera oder ist es gewollt oder ist dein CSS nicht 100 % korrekt oder ...?
Schönen Sonntag noch!
O'Brien
Hallo,
das sieht unter Opera 7.53 aber etwas merkwürdig aus, da der Fließtext nach rechts über das Hintergrundbild hinausragt. Ist das ein Kompatibilitätsproblem von Opera oder ist es gewollt oder ist dein CSS nicht 100 % korrekt oder ...?
Kann ich jetzt so nicht wirklich nachvollziehen wie du das meinst. Könntest du mir einen Screenshot machen, währst du so freundlich?
Grüße
Jeena Paradies
Hi Jeena,
Kann ich jetzt so nicht wirklich nachvollziehen wie du das meinst. Könntest du mir einen Screenshot machen, währst du so freundlich?
ich habe den Druck mal als PDF gespeichert (sieht genauso aus wie die Druckvorschau) und schicke ihn dir per E-Mail zu, OK?
Schönen Sonntag noch!
O'Brien
Hallo,
ich habe den Druck mal als PDF gespeichert (sieht genauso aus wie die Druckvorschau) und schicke ihn dir per E-Mail zu, OK?
Danke habe ihn bekommen http://home.arcor.de/nothing5cents/self/print-weblog.pdf.
Hm so was habe ich noch nie gesehen dass da das Hintergrundbild mitgedruckt wird. Bei meinem Opera 7.54 passiert das nicht. Da werde ich mal die Hintergrundfarbe auf weiß setzten müssen beim Drucken. Mal sehen ob das auch so klappt
Grüße
Jeena Paradies
Hallo,
Ich habe es jetzt geändert. Könntest du jetzt mal schauen ob es immer noch so ist? Es sollte gar keine Hintergrundgrafik ausgedruckt werden sondern der Hintergrund weiß sein.
Grüße
Jeena Paradies
Hi,
Ich habe es jetzt geändert. Könntest du jetzt mal schauen ob es immer noch so ist? Es sollte gar keine Hintergrundgrafik ausgedruckt werden sondern der Hintergrund weiß sein.
es sieht immer noch genauso aus, ABER: Ich habe mir mein Opera mal ein bisschen genauer angeschaut und auch die Druck-Optionen überprüft. Da ist bei mir "Print page background" angekreuzt, und wenn ich das "entkreuze", wird die Druckvorschau so angezeigt, wie du es vermutlich beabsichtigt hast.
Somit war es also wohl mein Fehler :-(
Ich habe bisher immer gedacht, dass man mit dieser Option den vom Seitenanbieter _beabsichtigten_ Hintergrund AUSschalten kann. Nun ist es aber wohl eher so zu deuten, dass man den _nicht_ beabsichtigten Hintergrund trotzdem EINschalten kann.
Schönen Sonntag noch!
O'Brien
Hallo,
Somit war es also wohl mein Fehler :-(
Ich habe bisher immer gedacht, dass man mit dieser Option den vom Seitenanbieter _beabsichtigten_ Hintergrund AUSschalten kann. Nun ist es aber wohl eher so zu deuten, dass man den _nicht_ beabsichtigten Hintergrund trotzdem EINschalten kann.
Du hast zwar falsch gedacht, aber der Fehler liegt trotzdem bei mir. Hast du die Seite noch einmal neu geladen oder war das druck.css noch im Cache? Ich hatte da damals nämlich keine Hintergrundfarbe gesetzt, was ich eigentlich heutzutage immer mache.
Grüße
Jeena Paradies
Hi,
Somit war es also wohl mein Fehler :-(
Ich habe bisher immer gedacht, dass man mit dieser Option den vom Seitenanbieter _beabsichtigten_ Hintergrund AUSschalten kann. Nun ist es aber wohl eher so zu deuten, dass man den _nicht_ beabsichtigten Hintergrund trotzdem EINschalten kann.
Du hast zwar falsch gedacht, aber der Fehler liegt trotzdem bei mir. Hast du die Seite noch einmal neu geladen oder war das druck.css noch im Cache? Ich hatte da damals nämlich keine Hintergrundfarbe gesetzt, was ich eigentlich heutzutage immer mache.
Ich habe den ganzen Cache einmal geleert und es mir dann neu geladen. Trotzdem wird das Hintergrundbild in der Druckvorschau angezeigt (bei angekreuzter Option "Print page background"). Es scheint sich nur mit CSS nicht verhindern zu lassen, Opera überschreibt dann wohl die von dir gesetzte Texthintergrundfarbe mit dem Hintergrundbild (ich habe mir die CSS-Datei allerdings zugegebnermaßen noch nicht angesehen).
Schönen Sonntag noch!
O'Brien
Hallo,
Ich habe den ganzen Cache einmal geleert und es mir dann neu geladen. Trotzdem wird das Hintergrundbild in der Druckvorschau angezeigt (bei angekreuzter Option "Print page background"). Es scheint sich nur mit CSS nicht verhindern zu lassen, Opera überschreibt dann wohl die von dir gesetzte Texthintergrundfarbe mit dem Hintergrundbild (ich habe mir die CSS-Datei allerdings zugegebnermaßen noch nicht angesehen).
Das ist wohl ein Bug des Opera, hab ich gerade hier gefunden:
http://www.minzweb.de/de/pages/sitetopics/archive_permalink.asp?id=44
Meine Seite ist wohl nicht die einzige der das passiert.
Grüße
Jeena Paradies
Hi,
Ich habe den ganzen Cache einmal geleert und es mir dann neu geladen. Trotzdem wird das Hintergrundbild in der Druckvorschau angezeigt (bei angekreuzter Option "Print page background"). Es scheint sich nur mit CSS nicht verhindern zu lassen, Opera überschreibt dann wohl die von dir gesetzte Texthintergrundfarbe mit dem Hintergrundbild (ich habe mir die CSS-Datei allerdings zugegebnermaßen noch nicht angesehen).
Hast Du mal probiert, im Druck-CSS das background-image auf none zu setzen?
cu,
Andreas
Hallo,
Hast Du mal probiert, im Druck-CSS das background-image auf none zu setzen?
Nein noch nicht, aber er hier: http://www.minzweb.de/de/pages/sitetopics/archive_permalink.asp?id=44 und ich glaube ihm eigentlich schon dass es nicht geht, werde es aber auch mal ausprobieren.
Grüße
Jeena Paradies
Hi Jeena,
Hast Du mal probiert, im Druck-CSS das background-image auf none zu setzen?
Nein noch nicht, aber er hier: http://www.minzweb.de/de/pages/sitetopics/archive_permalink.asp?id=44 und ich glaube ihm eigentlich schon dass es nicht geht, werde es aber auch mal ausprobieren.
Laut http://www.scss.com.au/family/andrew/o7/bugs/printstyles/ handelt es sich um einen bekannten Bug, der leider auch in Opera 7.6 Preview 1 noch existiert.
Grüße,
Roland
Hallo,
Laut http://www.scss.com.au/family/andrew/o7/bugs/printstyles/ handelt es sich um einen bekannten Bug, der leider auch in Opera 7.6 Preview 1 noch existiert.
Aha ok. Gibt es den schon? Dann schnell runterladen weil meiner hier 7.54 geradezu notorisch abstürzt.
Grüße
Jeena Paradies
Hi Jeena,
Laut http://www.scss.com.au/family/andrew/o7/bugs/printstyles/ handelt es sich um einen bekannten Bug, der leider auch in Opera 7.6 Preview 1 noch existiert.
Aha ok. Gibt es den schon?
http://snapshot.opera.com/windows/o760tp1v_7141.exe Download
http://snapshot.opera.com/windows/w760p1.html Changelog
Dann schnell runterladen weil meiner hier 7.54 geradezu notorisch abstürzt.
Previews solltest du ohnehin nicht über ältere Versionen installieren. Zeit also für einen Neubeginn ;-)
Grüße,
Roland
hi,
Previews solltest du ohnehin nicht über ältere Versionen installieren.
also ich hab ihn (wie immer) über die vorherige version, diesmal 7.50, drüberinstalliert (nach vorheriger sicherungskopie natürlich), und bis jetzt noch keine probleme irgendwelcher art feststellen können.
gruß,
wahsaga
Hallo,
http://snapshot.opera.com/windows/o760tp1v_7141.exe Download
http://snapshot.opera.com/windows/w760p1.html Changelog
Ich hab heute schon ein Stunde gesucht, aber auch nur das da oben gefunden :(
Die Linux P1 ist noch gar nicht draußen. Ach ich installiere die immer einfach drüber. Notfalls kann man sie ja leicht löschen und die alte wieder draufspielen, die persönlichen Daten sind sowieso in /home/jeena/.opera drin, und dann noch mal gesichert, da ist es egal was der Opera macht.
Grüße
Jeena Paradies
Hi Jeena,
Die Linux P1 ist noch gar nicht draußen.
http://snapshot.opera.com/unix/7.60-Preview-1/intel-linux/en/
Ach ich installiere die immer einfach drüber.
Möglicherweise ist das nur unter Windows ein Problem. Dort wird der Aufbau der ini-Dateien gelegentlich geändert.
Grüße,
Roland
Hallo,
http://snapshot.opera.com/unix/7.60-Preview-1/intel-linux/en/
cool super danke, ich hab das einfach nicht gefunden
Grüße
Jeena Paradies
Hi,
<a href="#" onclick="window.print();return false;">Drucken</a>
bitte nicht immer das Gerücht verbreiten, die Methode window.print() sei obligatorisch. Ihre Existenz *muss* vor der Verwendung abgeprüft werden. Desweiteren empfiehlt es sich, diesen Code mittels JavaScript auszugeben, da der Link andernfalls bei einem nicht zu vernachlässigen Teil der Nutzerschaft funktionsfrei bliebe.
Cheatah
Hallo Cheatah.
bitte nicht immer das Gerücht verbreiten, die Methode window.print() sei obligatorisch. Ihre Existenz *muss* vor der Verwendung abgeprüft werden. Desweiteren empfiehlt es sich, diesen Code mittels JavaScript auszugeben, da der Link andernfalls bei einem nicht zu vernachlässigen Teil der Nutzerschaft funktionsfrei bliebe.
Du bist aber wirklich nie zufrieden.
Ja. Dann lässt man es per document.write aufschreiben.
Und da mit der Existenz hast du natürlich auch Recht...
So dann bitteschön:
<script type="text/javascript">
<!--
if (window.print()) {
document.write("<a href="#" onclick="window.print();return false;">Drucken</a>");
}
//-->
</script>
So, jetzt zufrieden?
Ich wette, du entdeckst da aber doch noch irgendwo einen Haken.
Trotzdem noch einen schönen Abend ;)
H2O
Hi,
Du bist aber wirklich nie zufrieden.
nö ;-)
if (window.print()) {
*hüstel* "Wenn das Aufrufen des Druckdialogs erfolgreich ist ..."
document.write("<a href="#" onclick="window.print();return false;">Drucken</
Hier fehlt der Abschluss des Strings und von document.write(). Nein, ich habe nicht zu viel gelöscht, sondern sogar zu wenig.
So, jetzt zufrieden?
Wenn Du noch die überzähligen Klammern entfernst und die den <script>-Bereich abschließende Zeichenfolge "</" eliminerst ...
Trotzdem noch einen schönen Abend ;)
Dito :-)
Cheatah
Hallo,
ich verfolge diese Disskusion.
Wie kann ich denn z.B. nur einen bestimmten Bereich, z.b. ein Foprmular so drucken ohne das erst das Druckmenü geöffnet wird?
MFG
Bernd
Hallo Bernd,
Wie kann ich denn z.B. nur einen bestimmten Bereich, z.b. ein Foprmular so drucken ohne das erst das Druckmenü geöffnet wird?
Zum Glück gar nicht! Denke dir nur einmal:
while (TRUE)
{
printOhneNachzufragen("Haha\n");
}
Grüße
David
Hm, bei verschiedenen Seiten geht das aber. Z.B. bei Banken, um sich den Beleg dann auszudrucken. Da wird doch auch nicht erst nochmal das Browser-Druckmenü geöffnet.
Bernd
Hallo Cheatah.
if (window.print()) {
*hüstel* "Wenn das Aufrufen des Druckdialogs erfolgreich ist ..."
Ja. Ich dachte das heißt, "Wenn die Funktion window.print zur Verfügung steht..."
In welchem Browser wird window.print denn ausgeführt?
document.write("<a href="#" onclick="window.print();return false;">Drucken</
Sag mal, zitierst du, was dir gerade passt?
Hier fehlt der Abschluss des Strings und von document.write(). Nein, ich habe nicht zu viel gelöscht, sondern sogar zu wenig.
Also ich habe zusätzlich zu dem was du oben zitiert hast noch
a>");
geschrieben!
Wenn Du noch die überzähligen Klammern entfernst [...]
Ja, gut. Die könnte man weglassen.
und die den <script>-Bereich abschließende Zeichenfolge "</" eliminerst ...
Warum?
Soll ich
<script ...>
...
<script>
schreiben? Aber dann beende ich das Script doch gar nicht?
Habe ich was falsch verstanden?
H2O
Hi,
if (window.print()) {
*hüstel* "Wenn das Aufrufen des Druckdialogs erfolgreich ist ..."
Ja. Ich dachte das heißt, "Wenn die Funktion window.print zur Verfügung steht..."
In welchem Browser wird window.print denn ausgeführt?
Nein, window.print() heißt, daß die Funktion ausgeführt werden soll.
Wenn nur die Existenz geprüft werden soll, brauchst Du das Funktions-Objekt, nicht den Aufruf.
document.write("<a href="#" onclick="window.print();return false;">Drucken</
Sag mal, zitierst du, was dir gerade passt?
Nein, tut er nicht.
Hier fehlt der Abschluss des Strings und von document.write(). Nein, ich habe nicht zu viel gelöscht, sondern sogar zu wenig.
Also ich habe zusätzlich zu dem was du oben zitiert hast noch
a>");
geschrieben!
Aber das befindet sich nicht mehr im Inhalt des script-Elements - denn das endet beim ersten Vorkommen der Zeichenfolge </
und die den <script>-Bereich abschließende Zeichenfolge "</" eliminerst ...
siehe oben.
cu,
Andreas
Hallo MudGuard.
Nein, window.print() heißt, daß die Funktion ausgeführt werden soll.
Naja. Man lernt halt immer wieder dazu ;)
Sag mal, zitierst du, was dir gerade passt?
Nein, tut er nicht.
Oh, ja, ich sehe ein. Sorry, für diese freche Bemerkung.
Aber das befindet sich nicht mehr im Inhalt des script-Elements - denn das endet beim ersten Vorkommen der Zeichenfolge </
Richtig (endlich ist dieses blöde Brett vor meinem Kopf weg *g*). Da habe ich aber wirklich lange für gebraucht bis ich das verstanden habe.
Tja, tja. Hauptsache ich hab's nun endlich verstanden. ;)
Es müsste also / heißen.
Danke an euch beide, dass ihr es mir erklärt habt, H2O
Hallo, oute mich zwar nicht gerne, aber hab eure Diskussion gespannt verfolgt, aber den Script nicht zum laufen gebracht. Ist es unverschämt, wenn ich dich bitte am Ende vielleicht nochmal den korrekten Code zu posten?
Würdest mir einen riesen Gefallen tun.
Pierre
Hallo finkenmann.
Hallo, oute mich zwar nicht gerne, aber hab eure Diskussion gespannt verfolgt, aber den Script nicht zum laufen gebracht. Ist es unverschämt, wenn ich dich bitte am Ende vielleicht nochmal den korrekten Code zu posten?
Nein, ist es nicht. Ich hoffe ich habe alles verstanden, was die zwei mir gesagt haben. Aber wenn ich falschen Code poste werden die zwei mich warscheinlich korrigieren (zumindest früher oder später *g*).
Also hier ist der Code:
<script type="text/javascript">
<!--
if (window.print)
document.write("<a href="#" onclick="window.print();return false;">Drucken</a>");
//-->
</script>
Das Script musst du da im Body unterbringen, wo auch der Link erscheinen soll und schon fertig.
Würdest mir einen riesen Gefallen tun.
Kein Problem.
Schönen Tag noch, H2O
PS: Sorry, dass ich so spät schreibe, aber durch die Server-Ausfälle ging es nicht früher.
--
Selfcode: ie:% fl:| br:^ va:| ls:# fo:) rl:? n4:| ss:{ de:] js:) ch:? sh:( mo:? zu:)
Infos: http://emmanuel.dammerer.at/selfcode.html