JS ----实现复制粘贴功能 (剪切板应用clipboardData)
注意: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)的更多相关文章
- js实现复制粘贴功能
在项目中使用到复制粘贴功能,虽然网上有很多大牛封装了很多的插件,但是还是想不去使用插件,就像自己来实现这个功能. 另一篇是禁止复制粘贴 前端er怎样操作剪切复制以及禁止复制+破解等 初步想法: 1. ...
- 通过如何通过js实现复制粘贴功能
在ie中window.clipboardData(剪切板对象)是可以被获取,所以利用这个方法我们可以实现在IE当中复制粘贴的功能,demo如下! <html> <head> & ...
- js实现复制内容到剪切板,兼容pc和手机端,支持Safari浏览器
Javascript原生有一些事件:copy.paste.cut, 这些事件可以作用的目标元素: 能获得焦点的元素 (如contentEditable内容能编辑或者可以选中的元素),或者是<bo ...
- 在html页面通过js实现复制粘贴功能
前言:要实现这个功能,常用的方式大概分为两类,第一种就是上插件,这个网上有大把,第二种就是直接用几行JS来实现. 这次说第二种实现方式,这方式有很大的局限性,只能用表单元素,并且不能设置disable ...
- 纯js实现复制内容到剪切板
下面的方法可以完美实现: 复制指定input 或者 textarea中的内容: 指定非输入框元素中的内容 代码如下: function copyToClipboard(elem) { // creat ...
- Clipboard.js实现复制内容到剪切板
<script type="text/javascript"> var clipboard1 = new Clipboard('.bt01'); clipboard1. ...
- JS禁止右键查看源码,禁止复制,复制内容到剪切板
有时候我们希望自己的网页源码不被查看,这时需要关掉鼠标的右击事件;有时候我们也希望禁止选择页面内容Ctrl+C复制. 1.禁止右键查看源码; <script> //设置右键事件 funct ...
- .NET 实现复制粘贴功能
老是把自己当作珍珠,就时时有怕被埋没的痛苦.把自己当作泥土吧,让众人把你踩成一条道路. -----<泥土>鲁藜 .NET如何实现复制粘贴功能,具体代码如下: aspx文件: <div ...
- Unity3d 复制文字到剪切板及存储图像到相册
游戏中里开发分享功能时用到两个小功能:1.复制一个链接到剪切板供在其他应用粘贴分享使用,2.保存一张二维码图像到相册供发送给其他应用用于分享.但是在unity中无法完成,需要分别开发相应的插件. An ...
随机推荐
- 解析ArcGis拓扑——检查的流程,以面重叠检查为例
最简单的面重叠错误检查是使用“地理处理”——“面相交”进行检查,其结果是重叠部分提取而成的新面要素类.本例不讲述此种方法. step1 准备待拓扑检查数据 名词: 数据库 DataBase→顾名思义, ...
- 053、overlay是如何隔离的?(2019-03-20周三)
参考https://www.cnblogs.com/CloudMan6/p/7341487.html 不同的overlay网络是相互隔离的,我们创建第二个overlay网络 ov_net2 并运行 ...
- 29. SpringBoot Redis 非注解
1. 引入依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spr ...
- 【bzoj 3110】[Zjoi2013]K大数查询
Description 有N个位置,M个操作.操作有两种,每次操作如果是1 a b c的形式表示在第a个位置到第b个位置,每个位置加入一个数c.如果是2 a b c形式,表示询问从第a个位置到第b个位 ...
- thymeleaf 传参到js的onclick事件中
html: <img th:onclick="'javascript:imgClick(\''+${card.id}+'\',\''+${card.name}+'\');'" ...
- ROI Pooling层详解
目标检测typical architecture 通常可以分为两个阶段: (1)region proposal:给定一张输入image找出objects可能存在的所有位置.这一阶段的输出应该是一系列o ...
- ubantu中安装TensorFlow遇到的问题
因为Ubuntu中装有python3.python2两种python环境,在装TensorFlow时需要根据版本进行适配 1.安装pip3 #在python2下安装pip sudo apt-get i ...
- SaltStack 理解
一.SaltStack 原理: 1.SaltStack 也是基于CS模式的主控master和client被控端 minion 结构:也是一个异构平台基础设置管理工具:遵守Apache2协议,完全开源. ...
- Oracle简单的序列应用
1.序列的简单作用 1.需要自增或自减一个值的时候. 2.为表中的列自动产生值. 3.由用户创建数据库对象,并可由多个用户共享. 4.一般用于主键或唯一列. 2.创建序列的语法及解析 create s ...
- Git命令执行漏洞
Git命令造成的反弹shell 漏洞描述: Git LFS可以.lfsconfig使用LFS由存储库中的文件配置(部分),并且可以将Git LFS指向ssh://. [lfs] url = ssh:/ ...