如何使用jquery/javascript打印二维码

如何使用jquery/javascript打印二维码,javascript,jquery,Javascript,Jquery,我只想打印二维码div而不是整页。有人能帮我吗 这是我的密码: <div id="qrcodeCanvas"></div> //Generating QR in this div <a id="Html2Image" href="#qrcodeCanvas">Download</a> <a id="mydiv" href="javascript:void(0);" onClick="PrintDiv();" >Print</a&

我只想打印二维码div而不是整页。有人能帮我吗

这是我的密码:

<div id="qrcodeCanvas"></div> //Generating QR in this div

<a id="Html2Image" href="#qrcodeCanvas">Download</a>
<a id="mydiv" href="javascript:void(0);" onClick="PrintDiv();" >Print</a>
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js' type='text/javascript'></script>
<script type="text/javascript" src="js/jquery.qrcode.js"></script>
<script type="text/javascript" src="js/qrcode.js"></script>


<script>
function PrintDiv()
{

}
</script>


<script>
var id  =   'Content';
$('#qrcodeCanvas').qrcode(id);

var canvas = $('#qrcodeCanvas canvas');
var img = $(canvas)[0].toDataURL("image/png");

$("#Html2Image").attr("download", "QR_Code.png").attr("href", img); //Downloading QR image
</script>
//在此分区中生成QR
函数PrintDiv()
{
}
变量id='内容';
$('#qrcodeCanvas')。qrcode(id);
var canvas=$(“#qrcodeCanvas canvas”);
var img=$(canvas)[0].toDataURL(“image/png”);
$(“#Html2Image”).attr(“下载”,“QR#u Code.png”).attr(“href”,img)//下载QR图像

提前谢谢。

我也有同样的问题,这次来阿克罗斯解决

<!DOCTYPE html>
<html>
<body>

  <div id="printableArea">
  <div id="qrcodeCanvas"></div>
</div>
<script>
function printDiv(divName) {
 var printContents = document.getElementById(divName).innerHTML;
 var originalContents = document.body.innerHTML;

 document.body.innerHTML = printContents;

 window.print();

 document.body.innerHTML = originalContents;
}
</script>
<input type="button" onclick="printDiv('printableArea')" value="print a qr!" />

</body>
</html>

函数printDiv(divName){
var printContents=document.getElementById(divName).innerHTML;
var originalContents=document.body.innerHTML;
document.body.innerHTML=打印内容;
window.print();
document.body.innerHTML=原始内容;
}

信用证:阿斯匹林的答案应该是有效的,但它会把一切都核化。事件处理程序,对代码中元素的任何引用,一切都将被破坏

而是考虑这种非破坏性的方法:

var tmp = document.createDocumentFragment(),
    printme = document.getElementById('printableArea').cloneNode(true);
while(document.body.firstChild) {
    // move elements into the temporary space
    tmp.appendChild(document.body.firstChild);
}
// put the cloned printable thing back, and print
document.body.appendChild(printme);
window.print();

while(document.body.firstChild) {
    // empty the body again (remove the clone)
    document.body.removeChild(document.body.firstChild);
}
// re-add the temporary fragment back into the page, restoring initial state
document.body.appendChild(tmp);

你说的“印刷”是指实际印刷吗?如果是这样,请使用
窗口,print()
并隐藏除CSS之外的所有内容。@VkyArain它会在第5行打印二维码通知!