Jquery實現複製內容到粘貼板

昨天在完成一個頁面,需要添加一個複製到粘貼板的功能。本來以爲應該是比較簡單的,但是沒想到,還比較難。於是在網上找答案,瞭解到關於複製到粘貼板,可以使用js或者jquery插件使用。

在使用了js之後,功能實現了,但是總覺得不夠,感覺用js也比較麻煩,因此又去找jquery使用方法。找到了一個插件,zclip。這個是在js的基礎上添加了jquery的操作。官網地址:http://www.steamdev.com/zclip/

使用前需要引入兩個js文件

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="zclip.js"></script>

下面是demo的代碼:

<!DOCTYPE html>
<html>
<head>
<title>ZeroClipboard Test</title>
<meta charset="utf-8">
<style type="text/css">
.line{margin-bottom:20px;}
/* 複製提示 */
.copy-tips{position:fixed;z-index:999;bottom:50%;left:50%;margin:0 0 -20px -80px;background-color:rgba(0, 0, 0, 0.2);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr=#30000000, endColorstr=#30000000);padding:6px;}
.copy-tips-wrap{padding:10px 20px;text-align:center;border:1px solid #F4D9A6;background-color:#FFFDEE;font-size:14px;}
</style>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="zclip.js"></script>
</head>
<body>
<div class="line">
    <h2>demo1 點擊複製當前文本</h2>
    <a href="#none" class="copy">點擊複製我</a>
</div>
<div class="line">
    <h2>demo2 點擊複製表單中的文本</h2>
    <a href="#none" class="copy-input">點擊複製單中的文本</a>
    <input type="text" class="input" value="輸入要複製的內容" />
</div>
</body>
</html>
<script type="text/javascript">
$(document).ready(function(){
/* 定義所有class爲copy標籤,點擊後可複製被點擊對象的文本 */
    $(".copy").zclip({
        path: "ZeroClipboard.swf",
        copy: function(){
        return $(this).text();
        },
        beforeCopy:function(){/* 按住鼠標時的操作 */
            $(this).css("color","orange");
        },
        afterCopy:function(){/* 複製成功後的操作 */
            var $copysuc = $("<div class='copy-tips'><div class='copy-tips-wrap'>? 複製成功</div></div>");
            $("body").find(".copy-tips").remove().end().append($copysuc);
            $(".copy-tips").fadeOut(3000);
        }
    });
/* 定義所有class爲copy-input標籤,點擊後可複製class爲input的文本 */
    $(".copy-input").zclip({
        path: "ZeroClipboard.swf",
        copy: function(){
        return $(this).parent().find(".input").val();
        },
        afterCopy:function(){/* 複製成功後的操作 */
            var $copysuc = $("<div class='copy-tips'><div class='copy-tips-wrap'>? 複製成功</div></div>");
            $("body").find(".copy-tips").remove().end().append($copysuc);
            $(".copy-tips").fadeOut(3000);
        }
    });
});
</script>

發佈了20 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章