首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >复制到不带Flash的剪贴板

复制到不带Flash的剪贴板
EN

Stack Overflow用户
提问于 2011-06-15 16:58:42
回答 5查看 83.2K关注 0票数 92

我找到了许多复制到剪贴板的解决方案,但它们要么都是flash,要么是网站端。我正在寻找方法复制到剪贴板自动,没有闪光灯和用户端,它是为用户脚本,当然跨浏览器。

EN

回答 5

Stack Overflow用户

发布于 2011-06-15 17:21:21

如果没有flash,这在大多数浏览器中都是不可能的。用户的剪贴板是与安全相关的资源,因为它可能包含密码或信用卡号码等内容。因此,浏览器理所当然地不允许Javascript访问它(一些浏览器允许它,并显示警告,表明用户已经确认,或者使用签名的Javascript代码,但这些都不是跨浏览器的)。

票数 31
EN

Stack Overflow用户

发布于 2012-02-28 20:32:42

我试过闪光灯解决方案,但我也不喜欢。太复杂太慢了。我所做的是创建一个文本区,将数据放入其中,并使用浏览器的"CTRL + C“行为。

jQuery javascript部分:

代码语言:javascript
复制
// catch the "ctrl" combination keydown
$.ctrl = function(key, callback, args) {
    $(document).keydown(function(e) {
        if(!args) args=[]; // IE barks when args is null
        if(e.keyCode == key && e.ctrlKey) {
            callback.apply(this, args);
            return false;
        }
    });
};

// put your data on the textarea and select all
var performCopy = function() {
    var textArea = $("#textArea1");
    textArea.text('PUT THE TEXT TO COPY HERE. CAN BE A FUNCTION.');
    textArea[0].focus();
    textArea[0].select();
};

// bind CTRL + C
$.ctrl('C'.charCodeAt(0), performCopy);

HTML部分:

<textarea id="textArea1"></textarea>

现在,在'PUT THE TEXT to copy HERE. CAN a FUNCTION.‘’中输入你想要复制的内容。面积。对我来说很好。你只需要做一个CTRL+C组合。唯一的缺点是你会在你的网站上显示一个丑陋的文本区。如果使用style="display:none“,复制解决方案将不起作用。

票数 26
EN

Stack Overflow用户

发布于 2015-09-30 01:13:29

clipboard.js刚刚发布,可以复制到剪贴板,而不需要闪存

在此处查看实际操作> http://zenorocha.github.io/clipboard.js/#example-action

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6355300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档