JavaScript实现复制功能
来源:互联网 发布:js禁止浏览器刷新按钮 编辑:程序博客网 时间:2024/05/17 09:15
- function copy(txtid){
- var txtObj = document.getElementById(txtid);
- if(window.clipboardData){ // 仅IE支持此对象,firefox、chrome不支持
- //1、通过clipboardData对象实现复制
- //window.clipboardData.clearData();
- //window.clipboardData.setData("Text",txtObj.value);
- //2、通过document对象实现复制:先选择中文本,再执行复制命令
- //txtObj.select();
- //document.execCommand("Copy"); // 仅IE支持,Firefox报语法错误,chrome执行结果返回false(不支持)
- //3、通过TextRange对象实现现复制:可以不用先选中内容
- txtObj.createTextRange().execCommand("Copy");
- }
- }
function copy(txtid){var txtObj = document.getElementById(txtid);if(window.clipboardData){ // 仅IE支持此对象,firefox、chrome不支持//1、通过clipboardData对象实现复制//window.clipboardData.clearData();//window.clipboardData.setData("Text",txtObj.value);//2、通过document对象实现复制:先选择中文本,再执行复制命令//txtObj.select();//document.execCommand("Copy");// 仅IE支持,Firefox报语法错误,chrome执行结果返回false(不支持)//3、通过TextRange对象实现现复制:可以不用先选中内容txtObj.createTextRange().execCommand("Copy");}}
- var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interface.nsIClipboard);
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interface.nsIClipboard);
Zero Clipboard的使用方法
注意:由于是基于Flash实现,Flash出于安全,需要在Web容器(例如Apache、Tomcat)中才能运行,直接打开Flash将不会被加载,按钮类似假死现象,网上说右键Flash设置将ZeroClipboard.swf添加到受信任位置,感觉应该是行的,我试了,仍然不行,也可能是我本地浏览器的问题。
1>下载Zero Clipboard的压缩包,解压后把文件夹中两个文件:ZeroClipboard.js和ZeroClipboard.swf放入到你的项目中;
2>引入Zero Clipboard.js文件,如下代码:<script type="text/javascript" src="ZeroClipboard.js"></script>;
注意:ZeroClipboard.js与ZeroClipboard.swf需要放在同一路径下,如果不在同一路径,可使用ZeroClipboard.setMoviePath()来设置。
3>简单复制代码如下:
- var clip = new ZeroClipboard.Client(); // 新建一个clip对象
- clip.setHandCursor( true ); // 设置鼠标为手型
- clip.setText("hello,world"); // 设置要复制的文本,可以为文本框的值
- clip.glue("copy-botton"); // 为clip注册一个按钮,参数为按钮元素的id,点击按钮就可以实现复制
var clip = new ZeroClipboard.Client(); // 新建一个clip对象clip.setHandCursor( true ); // 设置鼠标为手型clip.setText("hello,world"); // 设置要复制的文本,可以为文本框的值clip.glue("copy-botton"); // 为clip注册一个按钮,参数为按钮元素的id,点击按钮就可以实现复制
4>Zero Clipboard常用方法,建议直接查看源码:
reposition():防止当页面大小发生变化时,Flash按钮可能会错位问题
hide() :隐藏Flash按钮
show() :显示Flash按钮
setCSSEffects():解决Flash遮挡按钮样式失效问题(将:hover修改为.hover)。
5>Zero Clipboard 常用事件,事件处理函数为addEventListener():
load :Flash按钮加载完事件
mouseOver:鼠标移上事件
mouseOut: 鼠标移出事件
mouseDown:鼠标按下事件
mouseUp:鼠标松开事件
complete:复制成功事件
jquery.zclip库
由于ZeroClipboard是基于原生JavaScript实现,jquery.zclip使用jQuery对Zero Clipboard进行封装,如果项目中已经使用jQuery,建议使用它,jquery.zclip体积较小。
jquery.zclip下载地址:http://www.steamdev.com/zclip/
Zero Clipboard下载地址:https://github.com/zeroclipboard/ZeroClipboard/releases
示例下载:
为了方便测试,我将jquery.zclip和Zero Clipboard写好的例子上传到csdn,示例必须在web容器里运行。
下载地址:http://download.csdn.net/detail/bbirdsky/5776583
- javascript实现复制功能
- JavaScript实现复制功能
- JavaScript实现复制功能
- javaScript实现复制功能
- javascript实现复制粘贴功能
- javascript:点击复制功能实现
- javascript 实现复制功能,选择页面内容
- Javascript复制功能
- 用flash+javascript实现网页中复制数据功能
- 使用瑞道dorado-JavaScript实现复制功能
- JavaScript实现复制功能各浏览器支持情况实测
- java 实现复制功能
- 实现 复制 粘贴功能
- java实现复制功能
- js实现复制功能
- js实现复制功能
- 实现javascript深复制
- JS实现复制/粘贴功能
- 关于网络数据传输大小端字节序的转换
- java JDK7安装后指定环境变量失败的原因
- Spring 各种Advice示例
- 推荐个软件:wxHexEditor,基于GPL协议,十六进制编辑器,支持存储设备底层读写!
- Debian系统常用命令(转)
- JavaScript实现复制功能
- python之 break语句和continue语句及PASS语句
- 黑马程序员-java基础(一)
- 小小菜鸟 实习生的苦恼
- CentOS修改文本界面分辨率
- 持续集成之路——数据访问层单元测试遇到的问题
- 基于Eclipse的Android开发环境ADT中,中文显示字体很小,很难看
- 关于多线程学习总结(五) 线程池
- Android ANR