昨天在完成一個頁面,需要添加一個複製到粘貼板的功能。本來以爲應該是比較簡單的,但是沒想到,還比較難。於是在網上找答案,瞭解到關於複製到粘貼板,可以使用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>