blob: b2fa69a97ecbd0a4a9018e3fad583a181081cdb9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
function resizeViewportTo(viewportSelector, width, height) {
var iframe = document.querySelector(viewportSelector);
// Commonly used trick to trigger a layout
iframe.contentWindow.document.body.offsetTop;
iframe.width = width;
iframe.height = height;
iframe.contentWindow.document.body.offsetTop;
}
function injectStylesInIFrame(styleSelector, frameSelector) {
var style = document.querySelector(styleSelector),
frame = document.querySelector(frameSelector);
frame.contentWindow.addNewStyles(style.textContent);
}
if (window.parent != window) {
// we're in an iframe, so expose the bits that allow setting styles inside
window.addNewStyles = function (cssText) {
var styleTag = document.createElement("style"),
textNode = document.createTextNode(cssText);
styleTag.appendChild(textNode);
document.head.appendChild(styleTag);
}
}
|