JS把字符串存入系统剪贴板

     最近项目需要,要实现复制黏贴功能,之前做好了只能实现自己页面的复制黏贴 (也不是真正的复制黏贴 是通过投机取巧的,就是复制的时候把数据存入数组,黏贴的时候再把数据取出来),没法实现把数据存入本地的剪贴板然后可以自己一个文档中实现粘贴,所以就找了一下资料,找到了主要的有四种方法:  zeroclipboard  、document.execCommand("Copy")、clipboard、setData(). 找了些资料发现  第一种需要使用flash的  第四种浏览器的兼容性差只能在IE中使用  第三种由于未知原因自己的项目中没法使用所以只有使用的 clipboard  使用起来很简单 先下载插件   后把  clipboard.min.js导入   html 页面如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="../../../lib/jquery/jquery.min.js"></script>
<script type="text/javascript" src="./clipboard.min.js"></script>
function onclick111(){
	var clipboard = new Clipboard('.btn');
	clipboard.on('success', function(e) {
	    console.info('Action:', e.action);
	    console.info('Text:', e.text);
	    console.info('Trigger:', e.trigger);

	    e.clearSelection();
	});

	clipboard.on('error', function(e) {
	    console.error('Action:', e.action);
	    console.error('Trigger:', e.trigger);
	});
	
	$(".btn").attr("data-clipboard-text","你要传的字符串");
	//$(".btn").click();(当由另一个点击事件触发的时候,实现让其自动点击)
}
</head>
<body>
	
<div style="display:none">
<button class="btn" data-clipboard-action="copy" data-clipboard-text="1" onclick="onclick111()"></button>
</div>

	
</body>
</html>

还可以实现让一个元素的内容复制  

把data-clipboard-text 替换给data-clipboard-target

具体如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="../../../lib/jquery/jquery.min.js"></script>
<script type="text/javascript" src="./clipboard.min.js"></script>
function onclick111(){
	var clipboard = new Clipboard('.btn');
	clipboard.on('success', function(e) {
	    console.info('Action:', e.action);
	    console.info('Text:', e.text);
	    console.info('Trigger:', e.trigger);

	    e.clearSelection();
	});

	clipboard.on('error', function(e) {
	    console.error('Action:', e.action);
	    console.error('Trigger:', e.trigger);
	});
	
	$(".btn").attr("data-clipboard-text","你要传的字符串");
	//$(".btn").click();(当由另一个点击事件触发的时候,实现让其自动点击)
}
</head>
<body>
<textarea id="text">选择的内容</textarea>	
<div style="display:none">
<button class="btn" data-clipboard-action="copy" data-clipboard-target="#text" onclick="onclick111()"></button>
</div>

	
</body>
</html>

需要隐藏的时候使用第一种方法  不需要隐藏的时候使用第二种   

转载于:https://my.oschina.net/u/3037878/blog/895962

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值