单击w / clipboard.js后更改按钮文本

时间:2017-04-03 18:15:24

标签: javascript jquery html clipboard.js

我正在使用clipboard.js复制我网页上的一些文字。我的工作效果很好,但我想在用户点击复制文字后更改按钮文字。

这是我到目前为止所拥有的: 带文字的div:

<div #landingpage>
TEST TEXT
</div>

按钮:

<button class="btn" id="copy-button" data-clipboard-target="#landingpage" 
onclick="myFunction()">Copy Content</button>

和javascript:

<script>
(function(){
  new Clipboard('#copy-button');
})();
</script>

如何在点击后将按钮文本更改为“已复制”,然后在几秒钟后将其恢复为“复制”。

谢谢。

1 个答案:

答案 0 :(得分:3)

您可以收听success的{​​{1}}事件并更改文字。

<强> JS

clipboard

<强> HTML

$(function() {
  var $btnCopy = $('#copy-button');

  $btnCopy.on('click', function() {
    var clipboard = new Clipboard('#copy-button');

    clipboard.on('success', function(e) {
      $btnCopy.text('Copied');

      setTimeout(function() {
        $btnCopy.text('Copy');
      }, 2000);
    });
  });
});

<强> Check Fiddle