Javascript Window.Print()在chrome/Firefox中不工作
我正在使用以下代码打印div中的内容。它在IE中显示良好,但在chrome和firefox中显示空白屏幕 代码:Javascript Window.Print()在chrome/Firefox中不工作,javascript,dom,Javascript,Dom,我正在使用以下代码打印div中的内容。它在IE中显示良好,但在chrome和firefox中显示空白屏幕 代码: IE和其他浏览器的单独代码。它现在运转良好 代码: var原始内容; 函数打印(){ if(/MSIE(\d+\.\d+;/.test(navigator.userAgent)){ var DocumentContainer=document.getElementById('termscmaindiv'); var WindowObject=window.open(“”,“Prin
IE和其他浏览器的单独代码。它现在运转良好 代码:
var原始内容;
函数打印(){
if(/MSIE(\d+\.\d+;/.test(navigator.userAgent)){
var DocumentContainer=document.getElementById('termscmaindiv');
var WindowObject=window.open(“”,“PrintWindow”,
“宽度=800,高度=700,顶部=200,左侧=200,工具栏=否,
滚动条=是,状态=否,可调整大小=否”);
WindowObject.document.writeln(DocumentContainer.innerHTML);
WindowObject.document.close();
WindowObject.focus();
WindowObject.print();
WindowObject.close();
}
否则{
originalContents=document.body.innerHTML;
var printable=document.getElementById('termscmaindiv');
document.body.innerHTML=printable.innerHTML;
打印优惠券();
}
}
函数print优惠券(){
window.print();
endPrint优惠券();
}
函数endPrint优惠券(){
document.body.innerHTML=原始内容;
document.getElementById('termscmaindiv').scrollIntoView(true);
location.reload();
}
这似乎也在起作用:
WindowObject.document.writeln(html);
WindowObject.document.close();
WindowObject.scrollTo(0,0);
WindowObject.focus();
WindowObject.print();
当我发现注释掉.print()函数可以正确呈现弹出页面时,我发现了这一点。scrollTo触发通常由页面前面的打印对话框阻止的渲染。
文档。write
是邪恶的,请尽最大努力阻止它。(事实上我相信你总能阻止它。)什么是document.close()
?(在线5)-对我来说很好。也许你的HTML有问题?
<script type='text/javascript'>
var originalContents;
function Print() {
if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) {
var DocumentContainer = document.getElementById('TermsSCMainDiv');
var WindowObject = window.open('', "PrintWindow",
"width=800,height=700,top=200,left=200,toolbars=no,
scrollbars=yes,status=no,resizable=no");
WindowObject.document.writeln(DocumentContainer.innerHTML);
WindowObject.document.close();
WindowObject.focus();
WindowObject.print();
WindowObject.close();
}
else {
originalContents = document.body.innerHTML;
var printable = document.getElementById('TermsSCMainDiv');
document.body.innerHTML = printable.innerHTML;
printCoupon();
}
}
function printCoupon() {
window.print();
endPrintCoupon();
}
function endPrintCoupon() {
document.body.innerHTML = originalContents;
document.getElementById('TermsSCMainDiv').scrollIntoView(true);
location.reload();
}
</script>
WindowObject.document.writeln(html);
WindowObject.document.close();
WindowObject.scrollTo(0,0);
WindowObject.focus();
WindowObject.print();