ZeroClipboard - 复制前添加值

时间:2016-05-19 17:22:45

标签: javascript zeroclipboard

我使用的是ZeroClipboard的JS版本。

当用户点击复制按钮时,我想从 data-clipboard-text 中捕获数据,为此添加一些额外数据,然后将其复制到剪贴板。

这是我目前正在使用的代码,如何在将文本复制到剪贴板之前添加到文本中?

var clip = new ZeroClipboard( $("input[type='button']"), {
  moviePath: "clip/ZeroClipboard.swf"
});
clip.on( 'complete', function(client, args) {
    alert ('Copied');
});

我在clip.on之前尝试过使用此功能,但失败了:

clip.on('dataRequested', function (client, args) {
        clip.setText(args + "NEW VALUE");
    } );

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:1)

Setting the clipboard text可以使用'copy'事件处理程序[v2.x]:

完成
clip.on( "copy", function (event) {
    var clipboard = event.clipboardData;
    clipboard.setData( "text/plain", event.target.innerHTML + " <-- added this text!" );
    /*
     * for data-attribute use event.target.getAttribute("data-clipboard-text")
     */
});

For previous version [1.x]使用'dataRequested'事件处理程序:

client.on( 'dataRequested', function (client, args) {
  client.setText( this.getAttribute("data-clipboard-text") + "<- Copied me!" );
  /*
   * for text inside component use this.innerHTML
   */
});