我想创建一个iframe(使用jquery)并将其附加到我的页面,但是我想在JavaScript / jQuery中自己构建页面,而不是指定src属性。我这样做的原因是因为我想在页面上为单个图像创建打印提示而不打开新窗口。
基本上,我正在尝试实现此打印功能: http://www.boutell.com/newfaq/creating/printpart.html 但无需实际打开新窗口。我想在一个带有隐藏iframe的页面上执行此操作。
我想做这样的事情:
function loadOtherPage() {
$("<iframe><html><body><img src='image.png'/><script>window.print</script></body></html></iframe>")
.hide()
.appendTo("body");
}
不幸的是,似乎iframe已经创建但是头部和身体都是空的。由于浏览器安全功能,我无法在创建后对其进行编辑。
答案 0 :(得分:1)
像这样创建iframe:
var iframe = $('<iframe></iframe>')
然后附加iframe
$('body').append(iframe);
然后你可以这样写它的内容:
var iframe_styles = iframe[0].contentWindow.document.write('<style>body{ background-color: #fafafa; }</style>');
添加一些正文内容:
var iframe_content = iframe[0].contentWindow.document.write('<body>test</body>');