web开发Web前端之路

ZeroClipboard简介

2017-08-21  本文已影响101人  PoWerfulHeart

没有废话。。。。。。。。。。。。。。。。。。。。。。。我只是搬运+微封装工。
原生来写浏览器复制功能也不是不可以。但是~~~本着高效,稳健的心态,还是决定用ZeroClipboard。

简介

这是一款基于Flash的,兼容性较强的用于剪贴板复制的 JS 插件,它是基于 Flash 来实现跨浏览器的复制功能的。

github:https://github.com/zeroclipboard/zeroclipboard

使用

你需要两个文件,因为是基于Flash的,所以肯定需要一个.swf文件。

两种方式:
1.直接使用官方的CDN,可以直接使用
2.如果在本地服务器上使用,请放在同一目录下, ZeroClipboard.js 会自动加载 ZeroClipboard.swf
文件。省去配置swf文件的路径的步骤。

创建两个input元素(不一定非是input)
 <input id="clipText" type="text" />
 <input id="clip" type="button" data-clipboard-target="clipText" value="一键复制" />
实例化zeroClipboard对象
 <script type="text/javascript">
    window.onload=function(){
          var copy = new ZeroClipboard(document.getElementById("clip"));
    }
 </script>

就这样你就可以实现一键复制功能啦,so easy!!!

事件绑定

ZeroClicpboard事件绑定函数on,用法与jq十分类似。

    <script type="text/javascript">
       window.onload=function(){
          var copy = new ZeroClipboard(document.getElementById("clip"));
                    ZeroClipboard.on("error",function(){
                      alert('一键复制功能未正常加载。请检查浏览器Flash');
               })
        ZeroClipboard.on("copy",function(){
                      alert('复制成功');
               })
         }
    </script>

这里我只用到了error和copy事件。还有ready,aftercopy..........看自己需要。

重要

由于 Flash 本地沙箱的安全限制,以下代码如果是在本地HTML文件中被浏览器直接打开,将无法正常工作。

上一篇下一篇

猜你喜欢

热点阅读