前記:本來原生的JS是有提供一個函數來實現這個功能(window.clipboardData),但是很遺憾,這個函數僅僅支持IE和FF瀏覽器,所以基本用處不大。下邊介紹的是一個第三方插件庫(ZeroClipboard.js)。
ZeroClipboard.js在Git上的地址為:https://github.com/zeroclipboard/zeroclipboard
注意:此js庫不支持兼容手機端(包括Android、IOS),僅支持PC端瀏覽器。
第一步:將插件庫引入到工程中。
把Git上的dist目錄copy到自己的目錄中(其實只需要ZeroClipboard.js和ZeroClipboard.swf就OK~)
腳本文件引入:
<script src="ZeroClipboard.js"></script>
第二步:初始化插件庫。
var clip = new ZeroClipboard( document.getElementById("d_clip_button"), { moviePath: "ZeroClipboard.swf" } );
第三步:上代碼。
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title>Zero Clipboard Test</title>
5 <meta charset="utf-8">
6 </head>
7 <body>
8 <!--
9 說明: 10 1.data-clipboard-target 輸入要復制的對象的ID 11 -->
12 <button id="d_clip_button" class="my_clip_button" data-clipboard-target="fe_text"><b>復制到剪貼板</b></button>
13 <br/>
14 <textarea id="fe_text" cols="50" rows="3">輸入需要復制的內容</textarea>
15 </body>
16 </html>
17 <script type="text/javascript" src="ZeroClipboard.js"></script>
18 <script type="text/javascript">
19 //初始化復制對象
20 var clip = new ZeroClipboard( document.getElementById("d_clip_button"), { 21 moviePath: "ZeroClipboard.swf"
22 } ); 23
24 //復制內容到剪貼板成功后的操作
25 clip.on( 'complete', function(client, args) { 26 alert("復制成功,復制內容為:"+ args.text); 27 } ); 28
29 </script>
以上示例代碼注釋中已經對Zero Clipboard的功能進行了介紹,需要了解更多的功能請到https://github.com/zeroclipboard/ZeroClipboard
注意:運行環境必須在服務器環境下,否則看不到效果!