Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I print using JQuery

I have nested divs..in which images generate dynamically ...this is the html code ..my problem is if i click the print button the corresponding image need to be printed.

<div id="outputTemp" style="display:none">
<div id="rightoutputimgae">
<div id="rightimgId" class="rightimg"  rel="tooltip" content="
 <img src='jqe13/image/1.jpg' class='tooltip-image'/> ">
<div id="outputimageId" class="outputimage">
   <img src="jqe13/image/1.jpg" alt="Right Bottom Image"></div>
 </div>
 <ul>
 <li id="outcheckbox"><input name="outCheck" type="checkbox"></li>
<li id="outedit">
  <a href="#"><img src="jqe13/image/edit_s.PNG" alt="edit" title="Edit">
  </a></li>
<li id="outdelete"><a href="#" onclick="deleteImg(div11)">
<img src="jqe13/image/delet_c.PNG" alt="delete" title="Delete"></a></li>
<li id="outfullscreen">
<a href="#">
<img src="jqe13/image/fullscreen_c.PNG" alt="Full Screen" class="fullscreen" 
  title="Full Screen"></a></li>
 <li id="outshare">
 <a href="#"><img src="jqe13/image/share_c.PNG" alt="Share" title="Share"></a>
 <div id="menu">
 <div id="tooltip_menu">
<a href="#" class="menu_top" id="email">
<img src="jqe13/image/email.PNG" alt="Email" title="Email"></a>
<a href="#" onClick="postToFeed()" class="facebook"><img src="jqe13/image/fb.PNG" 
alt="Facebook" title="Facebook"></a>
<a href="#" id="twitter">
<img src="jqe13/image/twitter.png" alt="Twitter" title="Twitter"></a>
<a href="#" class="menu_bottom" id="save">
 <img src="jqe13/image/save.PNG" alt="Save" title="Save"></a>
 </div>
 </div>
 </li>
 <li id="outprint"><a href="#">
 <img src="jqe13/image/print.PNG" class="printMe" alt="Print" title="Print"></a>
   </li>
 </ul>
  </div>

i need to print the image when i click the print button..

how do i write jquery function to print the image..

like image 887
anu Avatar asked May 09 '13 07:05

anu


3 Answers

Try like

$('.printMe').click(function(){
     window.print();
});

or if you want to print selected area try like

$('.printMe').click(function(){
     $("#outprint").print();
});
like image 143
Gautam3164 Avatar answered Oct 17 '22 19:10

Gautam3164


Hey If you want to print selected area or div ,Try This.

<style type="text/css">
@media print
{
body * { visibility: hidden; }
.div2 * { visibility: visible; }
.div2 { position: absolute; top: 40px; left: 30px; }
}
</style>

Hope it helps you

like image 30
Neeraj Dubey Avatar answered Oct 17 '22 19:10

Neeraj Dubey


function printResult() {
    var DocumentContainer = document.getElementById('your_div_id');
    var WindowObject = window.open('', "PrintWindow", "width=750,height=650,top=50,left=50,toolbars=no,scrollbars=yes,status=no,resizable=yes");
    WindowObject.document.writeln(DocumentContainer.innerHTML);
    WindowObject.document.close();
    WindowObject.focus();
    WindowObject.print();
    WindowObject.close();
}
like image 32
Raman Aggarwal Avatar answered Oct 17 '22 21:10

Raman Aggarwal