mar*_*arS 8 javascript clipboard clipboard.js
我无法让clipboard.js工作; 我认为这是一个简单的"误解",关于整个事情是如何运作的,因为我甚至无法得到最简单的例子,就像在这个小提琴中一样 ......
我的具体问题是让这个工作:
HTML:
<button class="copyButton"
id="copyButtonId"
data-id="@item.Type"
data-clipboard-action="copy"
data-clipboard-target="#copy_@item.Type">
</button>
Run Code Online (Sandbox Code Playgroud)
应该复制的div是这样的:
<div id="copy_@item.Type">
@item.Type
Name...: @item.Name
Address: @item.Address
</div>`
Run Code Online (Sandbox Code Playgroud)
JS是:
$(function() {
$(document).on("click", ".copyButton", function() {
var clipboard = new Clipboard(".copyButton");
clipboard.destroy();
});
});
Run Code Online (Sandbox Code Playgroud)
我正在进入这个功能,但什么也没发生.我试过了:
clipboard.copy();
Run Code Online (Sandbox Code Playgroud)
但这只是让我异常......
我可以得到我要复制的文字
var id= "copy_" + $(this).attr("data-id");
var source = ($("#" + agent).html());
但我应该只能通过使用来解决这个问题clipboard.js
.
我无法得到任何例子,所以如果有人给我一个完整的例子,我会很高兴.我真的试图理解,我可能会过度思考整个事情并使其变得更加复杂.我不想要任何变通方法,因为我之前使用过,认为这是一个很棒的js解决方案...如果我能理解它:)
每一个正确方向的提示都值得赞赏!
Vic*_* S. 10
确保先添加正确的库;)
<script src="https://cdn.jsdelivr.net/clipboard.js/1.5.3/clipboard.min.js"></script>
或者你当地的min.js
我已将您的代码更改为:
var clipboard = new Clipboard('.copyButton');
clipboard.on('success', function(e) {
console.log(e);
});
clipboard.on('error', function(e) {
console.log(e);
});
Run Code Online (Sandbox Code Playgroud)
和js:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/clipboard.js/1.5.3/clipboard.min.js"></script>
<div id="copy">
@item.Type
Name...: @item.Name
Address: @item.Address
</div>
<button class="copyButton" id="copyButtonId" data-id="@item.Type"
data-clipboard-action="copy" data-clipboard-target="div#copy">Copy!</button>
Run Code Online (Sandbox Code Playgroud)
和我一起现在复制div.如果它不适合你,请告诉我.