无法使用javascript将元素innerHTML复制到剪贴板

时间:2017-06-09 15:45:26

标签: javascript clipboard

我使用clipboard.js用javascript复制我的html文本,但它不起作用。这是我的代码:

<html>
//...
<script src="http://asafdav.github.io/ng-csv/javascripts/ngClip.js"</script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/zeroclipboard/1.1.7/ZeroClipboard.min.js"></script>
//...
<div id="copy-target">hello</div>
<button class="copy-button" data-clipboard-action="copy" data-clipboard-target="#copy-target">Copy</button>
//...

<script>
var clipboard = new Clipboard('.copy-button');
</script>
</html>

当我使用textarea时效果非常好:

<textarea id="copy-target">hello</textarea> 

但是当我使用div时不行:

<div id="copy-target">hello</div>
谢谢你!

1 个答案:

答案 0 :(得分:0)

对我来说很好。我认为您的脚本标记是错误的 - 您提供的代码出现Clipboard is not defined错误。看起来您要包含zeroclipboard,但您打算使用clipboardjs?然后,您还有ngClip的格式错误的脚本标记。

尝试使用项目页面上的CDNs之一。

<!DOCTYPE html>
<html>
<head>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.6.1/clipboard.min.js"></script>
</head>
<body>
  <div id="copy-target">hello</div>
  <button class="copy-button" data-clipboard-action="copy" data-clipboard-target="#copy-target">Copy</button>
  
  <script>
    var clipboard = new Clipboard('.copy-button');
  </script>
</body>
</html>