我有一个打印图标,使用Jqueryui我试图与一个名为jqprint的Jquery打印插件集成。我想在点击图标时打印href
Html是:
<div class="item">
<a href="slides/image.jpg" title="Image"><img src="thumbs/image.jpg" /></a>
<<span class="printImage ui-icon ui-icon-print" title="Print Image"></span>
</div>
按钮代码:
$("span.printImage").live('click', function() {
$('.item a[href]').jqprint();
return false;
});
此代码打印整个缩略图页面,而不是该特定“.item”的href。 任何帮助,将不胜感激。我正在使用,因为我在页面上发生了一些动态变化。
答案 0 :(得分:3)
$('.item a[href]').jqprint();
不能简单地工作,因为这不是jqPrint设计用于打印元素属性的方式。它旨在打印元素。您拥有的内容将打印所有已定义类.item
和href
属性的锚点。怎么样:
var link = $(this).parents(".item.isotope-item").children("a").attr("href");
var img = $("<img />", { src: link }).appendTo("body");
img.load(function(){
img.jqprint();
img.remove();
});
最后答案:D
答案 1 :(得分:1)
$('.item a[href]').jqprint();
将在指定了jqprint()
属性的所有锚元素上调用href
。
这会导致它自然地出现在页面上的所有锚点上,打印指定的href
是什么意思,你的意思是在锚指向的位置打印资源吗?
如果您的目标是在跨度之前调用锚点jqprint()
,您可以尝试这样的事情,尽管这将取决于您的html结构......
$("span.printImage").live('click', function() {
$(this).prev().jqprint(); // or $(this).prevAll("a:first").jqprint();
return false;
});