HTML5替代基于闪存的ZeroClipboard,用于安全地将数据复制到剪贴板?

jfr*_*d00 64 clipboard html5 zeroclipboard

随着闪存在许多环境(iPhone,Android,IE10等)的出路上,有没有任何新的解决方案即将在没有安装闪存的情况下安全地将信息复制到剪贴板?

到目前为止我一直在使用ZeroClipboard,但是我担心更多没有闪存的观众,这个功能会被破坏,我希望尽可能不依赖于Flash.

Bea*_*ard 21

原因是自动复制到剪贴板可能非常危险,因此除非使用闪存,否则大多数浏览器(IE除外)都会使其变得困难.

就像你的ZeroClipboard一样,剪贴板LMCButton也使用在后台运行的小型flash脚本.

一个常见的解决方案是这样做:

 function copyToClipboard (text) {
     window.prompt ("Copy to clipboard: Ctrl+C, Enter", text);
 }
Run Code Online (Sandbox Code Playgroud)

我在Jarek Milewski找到的时候,其他人在这里问了这个问题

*是的我找到了IE的一个解决方案,但是在大多数现代浏览器中都不起作用,请点击此处.

  • 只是为了完成,然后...... :)如果我们作为Web开发人员能够在Flash中执行某些操作,那么我不明白为什么我们不应该允许自己在HTML(5)中执行此操作.如果它是一个洞,它已经存在于所有浏览器的95%以上,所以我们没有开辟新的洞,而那些想要利用它的人仍然能够做到这一点,只在Flash中. (21认同)
  • 如果我之前已经删除了重要信息,并且任何网站都可以覆盖我的剪贴板,那么这将导致我丢失信息.有安全漏洞. (9认同)
  • 如果我们可以通过Flash来实现它,那么为什么通过HTML5实现它会成为一个安全漏洞呢?从剪贴板读取肯定是,但调用写入剪贴板安全漏洞似乎有点牵强,因为它要求用户实际将其粘贴到危险的东西. (7认同)
  • 我同意从剪贴板复制是一个安全问题,但我不认为写真的是.毕竟,它确实需要用户将其粘贴到某处,然后可能执行另一个操作来实际发送/执行它.我没有看到比我在我的网站上写文字"请复制'rm/*--recursive'(你知道我的意思)更大的威胁,并要求用户执行它. (5认同)
  • @freeall很多用户只是不首先安装闪存并避免这些安全漏洞.使其成为标准HTML5会将问题强加给每个人,而浏览器供应商实际上非常关注,以免增加安全漏洞. (4认同)

Bar*_*raa 19

我知道这个答案有点晚了,但现在有一个新的现代替代ZeroClipboard(基于Flash).Clipboard.js是一个2kB纯JavaScript替代品,没有依赖关系.


Tri*_*cey 7

我创建了一个名为clip-j的纯JavaScript解决方案.在这里.基本上它的作用是它利用document.execCommand('copy');了一些其他命令,使你看不到任何东西.这是代码:

function clip(text) {   
    var copyElement = document.createElement('input');      
    copyElement.setAttribute('type', 'text');   
    copyElement.setAttribute('value', text);    
    copyElement = document.body.appendChild(copyElement);   
    copyElement.select();   
    document.execCommand('copy');   
    copyElement.remove();
}
Run Code Online (Sandbox Code Playgroud)