复制文本到剪贴板不工作

Copy Text to Clipboard Not Working

本文关键字:工作 剪贴板 文本 复制      更新时间:2023-09-26

我使用zeroClipboard.js能够复制文本到剪贴板。我在这里和其他论坛上研究过,但我不知道为什么我不能让它工作…

我下载了文件并启动了本地主机服务器,什么也没有…

在我看来,Github存储库中充斥着不必要的文件…

我读了这篇文章,复制了EXACT代码,没有得到任何东西。谁能告诉我怎么了?不可见的flash文件没有显示

//set path
ZeroClipboard.setMoviePath('http://davidwalsh.name/demo/ZeroClipboard.swf');
//create client
var clip = new ZeroClipboard.Client();
//event
clip.addEventListener('mousedown', function () {
    clip.setText(document.getElementById('box-content').value);
});
clip.addEventListener('complete', function (client, text) {
    alert('copied: ' + text);
});
//glue it to the button
clip.glue('copy');
// zeroClipboard.js is attached via EXTERNAL RESOURCES.

小提琴在这里,但可能不需要

您可能有两个问题:

1)因为Flash播放器的安全限制,你应该使用.swf文件从同一域,你的html文件所在。问题在这一行:

ZeroClipboard.setMoviePath('http://davidwalsh.name/demo/ZeroClipboard.swf');

要修复它,您可以将其更改为.swf文件副本所在的本地路径:

ZeroClipboard.setMoviePath('ZeroClipboard.swf');

2) ZeroClipboard只有在从服务器运行时才能正常工作。确保你没有从本地文件夹运行你的网页。(浏览器地址栏中的URL必须以http开头,不能以file:///开头)


那篇文章中使用的库已经过时并且有一些错误。我建议你使用更新的版本,可以在这里找到:https://github.com/zeroclipboard/zeroclipboard