注意:ie7,与ie8 对网页有个复制的权限,需在“安全”中的“自定义级别”的脚本中设置

clipboardData 对象

提供了对剪贴板的访问。

三个方法 :
1.clearData(sDataFormat) 删除剪贴板中指定格式的数据。 
2.getData(sDataFormat)  从剪贴板获取指定格式的数据。 
3.setData(sDataFormat, sData) 给剪贴板赋予指定格式的数据。返回 true 表示操作成功。

例子:

 <script language="JavaScript">
<!--
var text = "123";
if (!window.clipboardData.setData('Text', text)) // 赋予 text 格式的数据
{
alert("复制失败!");
}
text = window.clipboardData.getData('Text'); // 获取 text 格式的数据
alert(text);
window.clipboardData.clearData('Text'); // 清除 text 格式的数据
text = window.clipboardData.getData('Text');
alert(text);
//-->
</script>
JS复制代码例子:
 一些方法:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Js复制代码</title>
</head>
<body>
<p>
<input type="button" name="anniu1" onClick='copyToClipBoard()' value="复制专题地址和url地址,传给QQ/MSN上的好友">
<script language="javascript">
12 function copyToClipBoard(){
13 var clipBoardContent="";
14 clipBoardContent+=document.title;
15 clipBoardContent+="";
16 clipBoardContent+=this.location.href;
17 window.clipboardData.setData("Text",clipBoardContent);
18 alert("复制成功,请粘贴到你的QQ/MSN上推荐给你的好友");
19 }
</script>
复制URL地址:
 <input type="button" name="anniu2" onClick='copyUrl()' value="复制URL地址">
<script language="javascript">
function copyUrl()
{
var clipBoardContent=this.location.href;
window.clipboardData.setData("Text",clipBoardContent);
alert("复制成功!");
}
</script>

点击文本框时,复制文本框里面的内容

 <input onclick="oCopy(this)" value="你好.要copy的内容!">
<script language="javascript">
function oCopy(obj){
  obj.select();
  js=obj.createTextRange();
  js.execCommand("Copy")
  alert("复制成功!");
}
</script>

复制文本框或者隐藏域中的内容

 <script language="javascript">
function CopyUrl(target){
  target.value=myimg.value;
  target.select();
  js=myimg.createTextRange();
  js.execCommand("Copy");
  alert("复制成功!");
}
function AddImg(target){
  target.value="[IMG]"+myimg.value+"[/ img]";
  target.select();
  js=target.createTextRange();
  js.execCommand("Copy");
  alert("复制成功!");
}
</script>
<input name=myimg type=hidden id=myimg value="http://pmp.www.jb51.net" />
<input name=imgurl type=text size=32 value="http://pmp.www.jb51.net" />
<input type=button value="点击这里复制本站地址" onclick="CopyUrl(imgurl);" />

复制span标记中的内容 

 <script type="text/javascript">
</script>
<br />
<br />
<script type="text/javascript">function copyText(obj)
{
var rng = document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
  rng.select();
  rng.execCommand("Copy");
  rng.collapse(false);
  alert("复制成功!");
}
</script> <span id="tbid">http://pmp.www.jb51.net</span>   
[<a href="#" onclick="copyText(document.all.tbid)">点击复制</a>]<br/><br/> 
<span id="tbid2">http://www.www.jb51.net/pmp</span>   
[<a href="#" onclick="copyText(document.all.tbid2)">点击复制</a>]<br/><br/>
function copyQQ(qq){
var obj=document.getElementById(qq);
obj.select();
js=obj.createTextRange();
js.execCommand("Copy");
alert("代码已经被成功复制!");
} //设置复制内容 附加 本网站的URL
function SetCopyContent() {
window.event.returnValue = false;
var content = document.title + "/r/n";
content += document.getElementById("txt1").value + "/r/n";
content += "本资源来自 " + this.location.href;
window.clipboardData.setData('Text', content);
alert("复制成功,请粘贴到你的QQ/MSN上推荐给你的好友");
}
调用:
<input id="txt1" type="text" value="Hello World!" onclick="getTxtSelect(event)"/>
<input type="button" value="复制文本框中的值" onclick="SetCopyContent();" />
 <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Window对象的属性02</title>
<script language="javascript" type="text/javascript">
/*
window.screen对象:屏幕对象,包含了屏幕的相关信息。
window.clipboardData对象:剪贴板对象,对剪贴板操作的对象。(在网页内只能支持复制或者设置文本格式的)
clearData("Text"):清空剪贴板
getData("Text"):读取剪贴板的值,在IE中只能支持Text文本格式
setData("Text",value):设置剪贴板中的值
案例:复制地址给好友,见备注
禁止复制:body oncopy事件中 设置 return false;
oncopy、onpase事件:复制、粘贴事件,可用于多数控件
*/ //屏幕分辨率
function screenInfo() {
if (window.screen.width < 1024 || window.screen.height < 768) {
window.alert("您的电脑属于史前产物!");
return;
}
window.alert("您的分辨率是:" + window.screen.width + " " + window.screen.height);
}
//复制地址给好友
function operClipBoard() {
var divObj = document.getElementById("divClipBoard");
var content = divObj.innerText;
content = "您复制的内容是:" + content + " \r\n 资源来源:" + window.location.href;
window.alert('复制成功!');
//客户复制完之后,这个属性才会显示内容
window.alert(window.clipboardData.getData("text"));
window.clipboardData.setData("Text",content);
}
//网页禁止复制
function forbidCopy() {
window.alert("网页的内容,自能看,不能动!");
return false;
}
</script>
</head>
<body onload="screenInfo();" oncopy="forbidCopy();" >
<form id="form1" runat="server">
<div id="divClipBoard" onclick="operClipBoard();" >
http://www.jb51.net
</div>
<hr />
输入密码:
<input type="text" oncopy="window.alert('禁止复制!');return false;" />
再输入一边密码:
<input type="text" onpaste="window.alert('禁止粘贴!');return false;" />
</form>
</body>
</html>
 <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title> <script language="javascript" type="text/javascript">
/*
div 没有oncopy事件
body 与 文本框有这个事件 */ function OperClipBoard() {
window.clipboardData.setData("Text", window.clipboardData.getData("Text") + "\r\n本资源来自:" + window.location.href);
}
/*
流程:先oncopy触发,触发后仅仅是将内容复制到粘贴板,如果需要2次处理的话,等内容复制到粘贴板后,再进行2次操作,也就是对值进行处理后,
在赋值操作
*/
function copyContent()
{
window.setTimeout("OperClipBoard()", 100);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div oncopy="copyContent();">
Hello MyJSWorld!
</div>
<br />
<input type="text" oncopy="OperClipBoard();" value="Hello MyJSWorld!" />
</form>
</body>
</html>

JS ----实现复制粘贴功能 (剪切板应用clipboardData)的更多相关文章

  1. js实现复制粘贴功能

    在项目中使用到复制粘贴功能,虽然网上有很多大牛封装了很多的插件,但是还是想不去使用插件,就像自己来实现这个功能. 另一篇是禁止复制粘贴 前端er怎样操作剪切复制以及禁止复制+破解等 初步想法: 1. ...

  2. 通过如何通过js实现复制粘贴功能

    在ie中window.clipboardData(剪切板对象)是可以被获取,所以利用这个方法我们可以实现在IE当中复制粘贴的功能,demo如下! <html> <head> & ...

  3. js实现复制内容到剪切板,兼容pc和手机端,支持Safari浏览器

    Javascript原生有一些事件:copy.paste.cut, 这些事件可以作用的目标元素: 能获得焦点的元素 (如contentEditable内容能编辑或者可以选中的元素),或者是<bo ...

  4. 在html页面通过js实现复制粘贴功能

    前言:要实现这个功能,常用的方式大概分为两类,第一种就是上插件,这个网上有大把,第二种就是直接用几行JS来实现. 这次说第二种实现方式,这方式有很大的局限性,只能用表单元素,并且不能设置disable ...

  5. 纯js实现复制内容到剪切板

    下面的方法可以完美实现: 复制指定input 或者 textarea中的内容: 指定非输入框元素中的内容 代码如下: function copyToClipboard(elem) { // creat ...

  6. Clipboard.js实现复制内容到剪切板

    <script type="text/javascript"> var clipboard1 = new Clipboard('.bt01'); clipboard1. ...

  7. JS禁止右键查看源码,禁止复制,复制内容到剪切板

    有时候我们希望自己的网页源码不被查看,这时需要关掉鼠标的右击事件;有时候我们也希望禁止选择页面内容Ctrl+C复制. 1.禁止右键查看源码; <script> //设置右键事件 funct ...

  8. .NET 实现复制粘贴功能

    老是把自己当作珍珠,就时时有怕被埋没的痛苦.把自己当作泥土吧,让众人把你踩成一条道路. -----<泥土>鲁藜 .NET如何实现复制粘贴功能,具体代码如下: aspx文件: <div ...

  9. Unity3d 复制文字到剪切板及存储图像到相册

    游戏中里开发分享功能时用到两个小功能:1.复制一个链接到剪切板供在其他应用粘贴分享使用,2.保存一张二维码图像到相册供发送给其他应用用于分享.但是在unity中无法完成,需要分别开发相应的插件. An ...

随机推荐

  1. 解决浏览器跨域限制方案之JSONP

    一.什么是JSONP JSONP即:JSON with Padding,是一种解决因浏览器跨域限制不允许访问跨域资源的方法. JSONP是一个非官方的协议,它允许在服务器端返回javascript标签 ...

  2. 腾讯云cos封装

    public class CosUtil { int _appId = xxxxx; string _secretId = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...

  3. 按科室统计 2.181222版本 关联查询join 不对

    SQL: select t0.deptName, t0.deptId, t0.startTime, t0.endTime, IFNULL(t0.num,) as num0, IFNULL(t1.num ...

  4. FILE SIGNATURES TABLE

    FILE SIGNATURES TABLE 16 December 2017 This table of file signatures (aka "magic numbers") ...

  5. 梯度下降算法对比(批量下降/随机下降/mini-batch)

    大规模机器学习: 线性回归的梯度下降算法:Batch gradient descent(每次更新使用全部的训练样本) 批量梯度下降算法(Batch gradient descent): 每计算一次梯度 ...

  6. mssql 创建存储过程简单实例

    CREATE procedure [dbo].[cp_User_Increment] @channelId int, @currentPage int, @pageSize int, @userId ...

  7. linux 添加并格式化新硬盘

    linux挂载磁盘1. 格式化磁盘mkfs -t ext4 /dev/sdb2. 挂载mount /dev/xvdb /home3. 查看磁盘对应的uuidblkid4. 加入开机自动挂载,在/etc ...

  8. javaweb简单的实现文件下载

    public HttpServletResponse download(HttpServletRequest request, HttpServletResponse response) throws ...

  9. vue-axios

    vue axios全攻略   不再继续维护vue-resource,并推荐大家使用 axios 开始,axios 被越来越多的人所了解.本来想在网上找找详细攻略,突然发现,axios 的官方文档本身就 ...

  10. MVC_Route层层深入

    1.前期准备 新建一个MVC项目,并添加Home和About两个控制器 在这两个控制器对应添加index页面 namespace Study_MVC_Route.Controllers { publi ...