2013-05-09 43 views
0

在这里,我有嵌套的divs ..其中图像动态生成...这是html代码..我的问题是,如果我点击打印按钮相应的图像需要打印。如何触发打印请求到客户端机器使用jQuery

<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> 

我需要打印的图像当我点击打印按钮.. ,也是我需要通过点击按钮,所有我需要 后来创建打印所有图像..

Javascript

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

这是否工作me..can任何人帮助我这个..

+0

“确实这项工作对我来说”你尝试将打印的图像?还有,你在'$(...'后面有一个'*',这会导致错误,将其删除。 – kennypu 2013-05-09 02:51:10

+0

我读过windows.print()打印整个网页。 – anu 2013-05-09 02:54:30

+1

yes,'window.print ()'会调出打印对话框,就好像你是按ctrl + p – kennypu 2013-05-09 02:55:14

回答

2

你要打开新窗口并只加载图片。之后你触发window.print。

如果这是你要的样子,我想创建简单的网页,将其简化

它命名为printImage.html,并使用类似下面的标记

<html> 
<script> 
function onload() { 
     var url = window.location.search.substring(1) 
     var img = document.getElementById('img') 
     img.src = url 
     window.print() 
} 

</script> 
<body onload="onload()"> 
<img href="" id='img' /> 
</body> 
</html> 

有你”将能够对图像新窗口一样由@kennypu提供printImage.html?myfullpathtotheeimage.jpg

其实第二个选项是相当简单的实现

下面的样式表添加到您的网页

@media print { 
    * { display:none; } 
    .print { display:block } 
} 

然后只需拨动print类你要打印的元素。

+0

我可以实现它在同样的网页,如果我点击打印按钮..它应该触发打印机 – anu 2013-05-09 03:04:31

+0

然后@kennypu提供的第二个选项是我能想到的唯一的事情。 – vittore 2013-05-09 03:06:40

+0

@anuu我真的不明白你在问什么, – vittore 2013-05-09 18:51:41

2

如果你只想打印相应的图像,你有两种选择。

  1. 当单击该按钮,转到包含要只打印图像的不同的页面,并运行window.print()那里。

  2. 使用媒体查询进行打印样式表:@media print和隐藏一切,但在样式表

+0

thanx。 .i会尝试它: -/ – anu 2013-05-09 03:17:42

+0

写一个CSS和链接到div?是你说的 – anu 2013-05-09 03:22:18

+0

这里是打印样式表的指南:http://coding.smashingmagazine.com/2011/11/24/h ow-to-set-up-a-print-style-sheet/ – kennypu 2013-05-09 03:28:58

相关问题