我正在尝试将page braker添加到每个html部分的末尾,这是我的代码:
printHtml += '<div id="#pageBraker">end of current page</div>';
$("#pageBraker").css("display","none");
$("#pageBraker").css("display","block");
$("#pageBraker").css("page-break-before","always");
在每个部分的最后,我看到end of current page
没有控制台错误。
我的问题是:
1.如何将@media
添加到我的pageBraker
或我的HTML?
2.这是动态插入的正确方法吗?
这是我的整个代码:
//elemsToPrint - list of elements I want to print but with page breaker between
for (var index = 0; index < elemsToPrint.length; index++) {
printElement = elemsToPrint[index];
printHtml += $(content).parent().html();
printHtml += '<div id="#pageBraker">end of current page</div>';
$("#pageBraker").css("display","none");
$("#pageBraker").css("display","block");
$("#pageBraker").css("page-break-before","always");
//send to printer
_printElement(printHtml);
}
最终目标是每个部分(printHtml
)将在单独的页面中打印。
感谢您的帮助。
答案 0 :(得分:1)
您不需要在Callable
中应用任何样式。相反,在样式表中进行:
for-loop
您在此处使用#pageBraker {
display: none;
}
@media print {
#pageBraker {
display: block;
page-break-before: always;
}
}
媒体查询,该查询仅在打印视图中应用此特定样式。在打印视图之外,@print
不会显示。