【问题标题】:Jquery click function to print href questionjquery点击功能打印href问题
【发布时间】:2011-03-17 21:13:02
【问题描述】:

我有一个打印图标,使用 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。 任何帮助,将不胜感激。我正在使用实时,因为我在页面上发生了一些动态变化。

【问题讨论】:

    标签: jquery printing click


    【解决方案1】:

    $('.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

    【讨论】:

    • 关闭,但它将 href 打印为文本,而不是图像。
    • 感谢您提供有关元素问题的信息。我试图用 div 中的图像 src 来定位一个隐藏的 div,但它也出现了空白。
    • 有效……除了它只打印第一张图像,即,我单击的每个 .item 打印图标都会显示相同的图像。这也是我使用隐藏 div 选项得到的结果
    • 不应为每个锚点显示相同的图像,除非它们都具有相同的 href。
    • 我同意,但似乎是。这是 jsfiddle 的链接以显示结果。除了第一个(80x80)之外,我将所有href设置为600x600。当您单击打印图标(单击显示图标查看它们)时,所有要打印的结果图像都是相同的 80x80 图像。 jsfiddle.net/macsupport/fa2mS
    【解决方案2】:

    $('.item a[href]').jqprint(); 将对所有指定了href 属性的锚元素调用jqprint()

    这将导致它自然发生在页面上的所有锚点上,打印指定的href是什么意思,你的意思是在锚点指向的位置打印资源?

    如果您的目标是在跨度之前在锚点上调用jqprint(),您可以尝试这样的事情,尽管这将取决于您的 html 结构...

    $("span.printImage").live('click', function() {
        $(this).prev().jqprint(); // or $(this).prevAll("a:first").jqprint();
        return false;
    });
    

    【讨论】:

    • 是的,我希望能够在 href 中打印图像(缩略图的大版本)。我尝试为每个带有特定图像的 .item 设置一个隐藏的 div,但我只是得到一个空白页。
    • @Mike 尝试我发布的示例中的其中一行,prevAll() 可能会产生更好的结果。
    • Niether 似乎瞄准了这张图片。
    • @Mike 好吧,我不得不说我不熟悉 jqprint,我在网上找不到太多关于它的信息,但如果它是为了打印图像本身,你可以尝试这样的事情...$("&lt;img /&gt;").attr("src", $(this).prevAll("a:first").attr("href")).jqprint() 有效地从链接的 href 创建一个新图像。
    • jqprint 不再在线,站点关闭。我也尝试了jquery printelement,但由于某种原因没有运气。感谢您的建议!
    猜你喜欢
    • 1970-01-01
    • 2018-12-27
    • 1970-01-01
    • 1970-01-01
    • 2010-12-30
    • 2013-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多