Text in externem Fenster ändern
mabuhay
- javascript
Hallo
Ich möchte ein externes Fenster öffnen, um darin die Seite Druckerfreundlicher anzuzeigen. Dafür öffne ich eine Vorlage, welche schon vorformatiert ist, und möchte dann den Text der Elternseite reinschreiben.
Ich hab einfach mal versucht, irgend ein Text reinzuschreiben:
my_window = window.open("../printer_friendly_page.htm", "Printer friendly version", "width=500px, height=500px");
my_window.document.getElementById("pf_url").innerHTML = "test test";
my_window.focus();
Der Text wird dabei in einen div-Layer hineingeschrieben mit der id="pf_url"
Das funktioniert irgendwie nicht. Kann mir jemand sagen was daran falsch ist?
Vielen Dank
Hallo mabuhay,
Das funktioniert irgendwie nicht. Kann mir jemand sagen was daran falsch
Das Problem ist, dass das Fenster noch nicht (vollständig) geladen ist. Du greifst also auf die ID zu ohne das sie existiert. Entweder Du fragst ab, wann das PopUp fertig ist und die ID existiert oder Du schreibst Dein Script ins Popup - letzteres würde ich machen.
Um dann den Text aus dem Elternfenster zu bekommen, sollte Dir opener() weiter helfen.
Ferner solltest Du auf Leerzeichen im Fensternamen ("Printer friendly version") verzichten, da diese nicht erlaubt sind!
Mit freundlichem Gruß
Micha
Vielen Dank für die Hinweise, werde ich versuchen
mfg
Vielen Dank für die Hinweise, werde ich versuchen
Die CSS-Lösung sollte besser und zuverlässiger sein.
Einfach den Bildern die im Ausdruck nicht erscheinen sollen ein class oder eine id geben und da mit CSS diplay:none
Das funktioniert dann auch eher fehlerfrei und selbst bei Browsern ohne Javascript.
Einfach den Bildern die im Ausdruck nicht erscheinen sollen ein class oder eine id geben und da mit CSS diplay:none
Das funktioniert dann auch eher fehlerfrei und selbst bei Browsern ohne Javascript.
Ja, stimmt, wenn JavaSctipt ausgeschaltet ist würde meine Version mit der per Script zusammengestellten Druckerseite nicht funktionieren. Werds also mit CSS machen
Vielen Dank nochmals :)
Hallo mabuhay.
Ich möchte ein externes Fenster öffnen, um darin die Seite Druckerfreundlicher anzuzeigen.
Warum? Es gibt doch heutzutage <http://de.selfhtml.org/css/eigenschaften/printlayouts.htm@title=weitaus sauberere Möglichkeiten> dafür. (Siehe auch <http://de.selfhtml.org/css/formate/einbinden.htm#link_media@title=SELFHTML: Verschiedene separate Stylesheets für unterschiedliche Ausgabemedien>)
Einen schönen Sonntag noch.
Gruß, Ashura
Hi
Ja, das hab ich auch schon angeschaut. Ich habe aber ein paar Grafiken welche nicht Hintergrundgrafiken sind (und beim Ausdrucken auch nicht dastehen müssen) und der Text wird auch nicht auf die ganze seitenbreite verteilt, was evtl. noch schön wäre.
Kannst ja mal schauen auf http://www.mytinyarchive.ch.vu, vielleicht hast du mir gerade einen Vorschlag zur Lösung des Problems.
mfg
Hallo mabuhay,
Ich habe aber ein paar Grafiken welche nicht Hintergrundgrafiken sind (und beim Ausdrucken auch nicht dastehen müssen)
Du könntest diesen Bildern eine Klasse geben und ihnen somit getrennte Eigenschaften bei display geben.
Kannst ja mal schauen auf http://www.mytinyarchive.ch.vu
Die seite läd bei mir nicht?!
Mit freundlichem Gruß
Micha
Hallo,
Du könntest diesen Bildern eine Klasse geben und ihnen somit getrennte Eigenschaften bei display geben.
warum Klassen? Ich unterstelle mal, dass IDs oder kontextabhängige Selektoren sinnvoller wären.
Kannst ja mal schauen auf http://www.mytinyarchive.ch.vu
Die seite läd bei mir nicht?!
Komisch. Ich werde sofort auf http://www.mypage.bluewin.ch/naeff/mytinyarchive/index.htm weitergeleitet, kein Problem.
Ciao,
Martin
Hallo,
Du könntest diesen Bildern eine Klasse geben und ihnen somit getrennte Eigenschaften bei display geben.
warum Klassen? Ich unterstelle mal, dass IDs oder kontextabhängige Selektoren sinnvoller wären.
Ähm, IDs versteh ich, aber was sind "kontextabhängige Selektoren". Das mit den klassen kann ich noch nachvollziehen, also display:hidden, aber wie ginge das dann mit den IDs?
mfg
Hallo,
Ähm, IDs versteh ich, aber was sind "kontextabhängige Selektoren".
Damit meine ich, dass man über den Nachfahrenselektor Elemente anhand ihrer Elternelemente (die ggf. wieder mit ID selektiert werden) ansprechen kann. Also zum Beispiel
ul#navi a img { ... }
Damit würde ich alle img-Elemente selektieren, die verlinkt (a) in einer Liste (ul) mit der ID #navi stehen. Das meinte ich mit "kontextabhängig".
Das mit den klassen kann ich noch nachvollziehen, also display:hidden, aber wie ginge das dann mit den IDs?
Ganz genauso - nur mit dem Unterschied, dass eine ID *genau ein* Element identifiziert, während eine Klasse ein ganzes Rudel erfassen kann. Es ist daher nicht sinnvoll, für ein Element, das man sowieso nur einmal hat, eine Klasse zu vergeben.
So long,
Martin
Tach
Ich habs nun angefangen mit CSS auf die Lösung zu kommen. Ein Problem besteht aber noch:
Ich hab den Text zwischen div-Tags, dies macht irgendwie noch ein paar probleme. Wenn viel Text drin steht, geht der Text in den div-Tags einfach über die Seite hinaus. Beim Firefox unten und rechts, der InternetExplorer scheint komplett probleme zu haben (In der Vorschau zählt er einige hundert Seiten), nur mit Opera scheint es zu klappen. Habs mit der Seite http://www.mypage.bluewin.ch/naeff/mytinyarchive/_home/ueber.htm getestet da dort viel text drin steht.
Hi,
also display:hidden,
Nö, Du solltest schon sinnvolle Werte benutzen.
cu,
Andreas
Hallo Der Martin,
warum Klassen?
Weil ich denke eine "noprint" Klasse wäre sinnvoller als allen Bilder eine ID zu geben.
oder kontextabhängige Selektoren
Ja, stimmt. Ich weiß aber atm nicht, nach welchen Kriterien die Bilder ausgewählt werden, die gedruckt bzw. nicht gedruckt werden sollen.
Komisch. Ich werde sofort auf http://www.mypage.bluewin.ch/naeff/mytinyarchive/index.htm weitergeleitet, kein Problem.
Über die direkte URI gehts auch über die Subdomain komme ich auch heute nicht drauf.
Mit freundlichem Gruß
Micha