【问题标题】:jQuery zClip isn't copying values to the clipboardjQuery zClip 没有将值复制到剪贴板
【发布时间】:2012-07-20 11:24:15
【问题描述】:
<script type="text/javascript">
jQuery(function() {
    jQuery(".process").click(function() {

    var enter = $(".enter").val();
    out = parseFloat(enter) + Math.floor((Math.random()*10)+1);

    $('.enter').attr("value", out);

    $('.process').fadeOut(0);
    $('.copy').fadeIn(0);

    });
});

jQuery(function() {
    jQuery(".copy").click(function() {

    $(".copy").zclip({
        path:'js/ZeroClipboard.swf',
        copy:function() { return $(".enter").val(); },
        afterCopy: afterCopy()
    });

    function afterCopy() {
        $(".enter").val('');
        $('.copy').fadeOut(0);
        $('.process').fadeIn(0);
    }

    });
});
</script>

<form class="form-wrapper cf" action="">
    <span>Enter A Number</span> <br />
    <input type="text" class="enter" size="15" />
    <button type="button" class="process">process</button>
    <button type="button" class="copy" style="display:none;">copy</button>
</form>

jQuery zClip 插件在我的代码中不起作用。

我想将第一个函数 [ jQuery(".process").click(function() ] 生成的值作为循环复制几次。

jsFiddle:http://jsfiddle.net/npYBm/

插件页面:http://www.steamdev.com/zclip/

有什么解决办法吗?谢谢。

问题已解决

【问题讨论】:

  • 问题已解决 - 如何?

标签: javascript jquery plugins zclip


【解决方案1】:

试试这个,

HTML

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>

<script type="text/javascript" src="http://www.steamdev.com/zclip/js/jquery.zclip.min.js"></script>

<form class="form-wrapper cf" action="">
    <span>Enter A Number</span> <br />
    <input type="text" class="enter" size="15" />
    <a class="" id="copy-button" href="#">Copy</a>
</form>

脚本

jQuery(function() {

    $("#copy-button").zclip({
        path:'http://zeroclipboard.googlecode.com/svn-history/r10/trunk/ZeroClipboard.swf',
        copy:function() {return $(".enter").val(); }
    });
});

问题是您将 zClip 函数放置在点击事件中。这不是必需的。

如果您右键单击“复制”锚标记,您可以看到 Flash 已附加到它。我认为在输入类型提交按钮的情况下它不会发生。那是另一个问题。

【讨论】:

  • 嗨,德克斯特,非常感谢您的回答。另外问题是:我需要一个按钮来使用 show() 和 hide() 进行“切换”而不是链接。你知道如何摆脱 Flash 附件吗?
  • @Vlad,由于安全原因,浏览器无法访问剪贴板。这就是他们使用闪存访问剪贴板的原因。一旦我使用了 zeroclipboard 并设置了链接按钮的样式,它们就会显示为按钮。您也可以像在按钮上一样在链接上显示/隐藏效果。希望它有所帮助:)
  • 我明白了。我会尝试解决这个问题。再次感谢。
【解决方案2】:
  1. 您正在复制不存在的“.link”元素的值
  2. fadeOut(0)hide() 相同
  3. 对象在加载时必须可见
  4. 在我看来,zCopy 添加了一个点击事件,因此在点击事件中分配它是多余的

This version 有效,但我不太确定原因。

【讨论】:

  • 首先我要感谢 Thomas 的回答。但是我需要一个按钮来使用 show() 和 hide() 进行“切换”——而不是两个按钮。在这个版本中,闪光灯也附在复制按钮上。这不是最终解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多