Drucken per Button moeglich?
pam
- javascript
0 Stefan Muenz0 Markus Lange0 Falk
0 Stefan Falz0 Martin
Liebe Forumer.
Ich suche eine Moeglichkeit, mit der ich Seiten per Button drucken kann.
Gibt es da etwas? Waere super, wenn jemandem was dazu einfallen wuerde.
Liebe Gruesse vom Hamburger Hafen
Pam
Hallo Pam,
Ich suche eine Moeglichkeit, mit der ich Seiten per Button drucken kann.
Gibt es da etwas? Waere super, wenn jemandem was dazu einfallen wuerde.
Ich poste jetzt mal nicht die einfache Variante, die nur mit Netscape 4 funktioniert, sondern eine speziellere, die angeblich auch mit MSIE 4 (der den einfachen print()-Befehl ja nicht kennt) geht (hab's aber noch nicht getestet):
1. Im Dateikopf:
<script language="JavaScript">
function Drucken()
{
if(document.layers) /* Abfrage auf Netscape 4 */
self.print();
if(document.all) /* Abfrage auf MSIE 4 */
{
self.focus();
var OLECMDID_PRINT = 6;
var OLECMDEXECOPT_DONTPROMPTUSER = 2;
var OLECMDEXECOPT_PROMPTUSER = 1;
var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
WebBrowser1.outerHTML = ''
}
}
</script>
2. im sichtbaren Bereich der Datei:
<form><input type="button" value="Seite Drucken" onClick="Drucken()"></form>
Ein spezielles ActiveX-Control also. Fragt mich jetzt nicht, wo ich den Kram her habe - ich glaube, Christine hat das mal irgendwo gepostet (hier im Forumsarchiv hab ich' jedoch nicht gefunden). Das fand ich damals so interessant, dass ich es gleich mit copy&paste eingefangen und als Notiz abgelegt habe. Getestet hab ich's aber wie gesagt nicht.
viele Gruesse
Stefan Muenz
Hi Stefan,
»»Ich poste jetzt mal nicht die einfache Variante, die nur mit Netscape 4 funktioniert, sondern
»»eine speziellere, die angeblich auch mit MSIE 4 (der den einfachen print()-Befehl ja nicht
»»kennt) geht (hab's aber noch nicht getestet):
hab's mit Netscape 4 und MSIE 4 ausprobiert und funktioniert auch. Einfach genial das Script!
Lediglich die letze Zeile muß ein ; haben.
»» WebBrowser1.outerHTML = ''
WebBrowser1.outerHTML = '';
Gruß Markus
Hi Stefan,
»»Ich poste jetzt mal nicht die einfache Variante, die nur mit Netscape 4 funktioniert, sondern
»»eine speziellere, die angeblich auch mit MSIE 4 (der den einfachen print()-Befehl ja nicht
»»kennt) geht (hab's aber noch nicht getestet):hab's mit Netscape 4 und MSIE 4 ausprobiert und funktioniert auch. Einfach genial das Script!
Lediglich die letze Zeile muß ein ; haben.»» WebBrowser1.outerHTML = ''
WebBrowser1.outerHTML = '';Gruß Markus
Beobachtetes 'Phänomen': Unter win95 funktioniert die Druckfunktion im IE4.x unter WinNT nicht. Aber eigentlich auch kein Wunder, so tief wie JS hier ins Getriebe greift, direkt per registry-key;))
cul,
Falk
Liebe Forumer.
Ich suche eine Moeglichkeit, mit der ich Seiten per Button drucken kann.
Gibt es da etwas? Waere super, wenn jemandem was dazu einfallen wuerde.Liebe Gruesse vom Hamburger Hafen
Pam
Hallo,
schau doch mal unter <../../tecb.htm#a36>.
Funzt aber nur mit NS 4.0
Tschau, Stefan
Hallo Pam
Ich suche eine Moeglichkeit, mit der ich Seiten per Button drucken kann.
Gibt es da etwas? Waere super, wenn jemandem was dazu einfallen wuerde.
window.print()
Das tut jetzt auch mit IE5.0 - man lese und staune!
Ich habs auch ausprobiert:
<a href="javascript:window.print()>drucken</a>
tuts wirklich. Es wird aber nicht direkt gedruckt,
sondern man gelangt ins Druckauswahlbild d.h. STRG+P.
Aber das war ja erst vor ein paar Tagen Thema, daß
MS bislang immer eine Version hinter Netscape her war.
Nun ja - jetzt ists wieder mal soweit.
Unter IE5.0 gibts dazu auch noch neue Events:
onbeforeprint und onafterprint.
Offensichtlich gibt doch mehr neue Features als bislang
geahnt, erhofft oder befürchtet.
Der WebWorkshop von MSOnline ist ja schon mal erwähnt worden. Den finde ich eigentlich ganz brauchbar und übersichtlich. Sind auch einige interessante Demos drin.
http://msdn.microsoft.com/workshop/default.asp
Zum Thema window.print() gelangt man aus dem Inhaltsverzeichnis (TOC) im linken Frame über:
DHTML, HTML & CSS
- DHTML References
- Methods
- dort in der Tabelle -> print
die Events stehen in
DHTML, HTML &CSS
-Scripting&Programming
- Scripting support for printing
Viel Spaß beim Drucken wünscht
Martin
PS: Vor ca. 1 Jahr habe ich mit Selfhtml HTML und Javascript gelernt - cut&paste = try&error. Im Forum habe ich viel dazugelernt. Haupsächlich über
guten Umgang im Web miteinander!
Jetzt wo ich auch mal was weitergeben kann - stolz - möchte ich mich bei allen bedanken, die immer wieder Zeit und Geduld aufbringen auch Anfängerfragen zu beantworten.