ich diesen Code erstellt haben Daten aus einem iFrameWie drucke ich einen iFrame mit Stylesheet?
function (data) {
var frame = $("<iframe>", {
name: "iFrame",
class: "printFrame"
});
frame.appendTo("body");
var head = $("<head></head>");
_.each($("head link[rel=stylesheet]"), function (link) {
var csslink = $("<link/>", { rel: "stylesheet", href: $(link).prop("href") })
head.append(csslink);
;});
frame.contents().find("head")
.replaceWith(head);
frame.contents().find("body")
.append(this.html());
window.frames["iFrame"].focus();
window.frames["iFrame"].print();
}
Dies schafft eine iFrame zu drucken, fügt einen Kopf, wo es setzt alle CSS-Links, die für diese Website benötigt werden. Dann schafft es den Körper.
Das Problem ist, wird das Styling nicht auf den Druck aufgetragen bekommen, es sei denn, ich an der Linie frame.contents() brechen. Finden („Kopf“). ReplaceWith (Kopf), was bedeutet, dass etwas in diesem Teil läuft asynchron.
Frage ist, kann ich irgendwie den Code erhalten, um kurz zu warten, bevor diese Zeile ausgeführt wird, oder gibt es vielleicht eine andere Möglichkeit, dies zu tun? Leider bin ich mit iFrames nicht so vertraut, also habe ich keine Ahnung, was es dort zu tun versucht.
https://Stackoverflow.com/questions/9616426/javascript-print-iframe-contents-only –
@SagarSinha nicht sicher, was Sie wollen, indem Sie diese Seite verknüpfen. Könntest du vielleicht etwas mehr erklären oder kommentieren, auf welchen Teil des Themas du dich beziehst? – Hofftari