Javascript 如何打印其中一个函数生成的特定html?
例如,我有以下功能:Javascript 如何打印其中一个函数生成的特定html?,javascript,html,printing,Javascript,Html,Printing,例如,我有以下功能: function getPrintedHTML() { //... return some_html_code; } 我知道我可以使用window.print()打印整个页面,但它可以打印整个页面。 是否可以执行任何操作来打印函数结果 请注意,打印时不将此html添加到正文。您可以隐藏页面中的其他元素,方法是将其余数据放在一个div中,并在上述函数中将div设为false您可以尝试使用iframe: var i = document.createEleme
function getPrintedHTML()
{
//...
return some_html_code;
}
我知道我可以使用window.print()
打印整个页面,但它可以打印整个页面。
是否可以执行任何操作来打印函数结果
请注意,打印时不将此html添加到正文。您可以隐藏页面中的其他元素,方法是将其余数据放在一个div中,并在上述函数中将div设为false您可以尝试使用
iframe
:
var i = document.createElement('iframe');
i.onload = function() {
i.contentDocument.body.innerHTML = someHtml;
i.contentWindow.print();
setTimeout(function() {
document.body.removeChild(i);
}, 0);
};
document.body.appendChild(i);
@Collett89-但我需要打印它,而不是输出它。将返回的HTML添加到页面,从打印机隐藏所有其他元素(也可以从屏幕隐藏新创建的HTML),打印,最后删除新创建的HTML。抱歉,无法打印文本流中不存在的元素。无需JS,请使用准备页面<
style
和link
标记中的code>media属性也适用于较旧的浏览器。我怀疑是否可能仅使用内联样式对打印机隐藏元素,但不确定。无论如何,使用样式表是最简单的。media
attribute即使在IE5:)中也能工作。谢谢。很好,它不需要额外的CSS