首页 > 代码库 > js copy
js copy
Javascript 实现复制(Copy)动作方法大全
投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2014-06-20 我要评论
现在浏览器种类也越来越多,诸如 IE、Firefox、Chrome、Safari等等,因此现在要实现一个js复制内容到剪贴板的小功能就不是一件那么容易的事了。
一、实现点击按钮,复制文本框中的的内容
?
1 2 3 4 5 6 7 8 9 10 11 | < script type = "text/javascript" > function copyUrl2() { var Url2=document.getElementById("biao1"); Url2.select(); // 选择对象 document.execCommand("Copy"); // 执行浏览器复制命令 alert("已复制好,可贴粘。"); } </ script > < textarea cols = "20" rows = "10" id = "biao1" >用户定义的代码区域</ textarea > < input type = "button" onClick = "copyUrl2()" value = "点击复制代码" /> |
二、复制专题地址和 url 地址,传给 QQ/MSN 上的好友
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <!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" > function copyToClipBoard(){ var clipBoardContent=""; clipBoardContent+=document.title; clipBoardContent+=""; clipBoardContent+=this.location.href; window.clipboardData.setData("Text",clipBoardContent); alert("复制成功,请粘贴到你的QQ/MSN上推荐给你的好友"); } </ script > |
三、直接复制 url
?
1 2 3 4 5 6 7 8 9 | < 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 > |
四、点击文本框时,复制文本框里面的内容
?
1 2 3 4 5 6 7 8 9 | < input onclick = "oCopy(this)" value = "你好.要copy的内容!" > < script language = "javascript" > function oCopy(obj){ obj.select(); js=obj.createTextRange(); js.execCommand("Copy") alert("复制成功!"); } </ script > |
五、复制文本框或者隐藏域中的内容
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | < script language = "javascript" > function CopyUrl(target){ target.value=http://www.mamicode.com/myimg.value; target.select(); js=myimg.createTextRange(); js.execCommand("Copy"); alert("复制成功!"); } function AddImg(target){ target.value="http://www.mamicode.com/[IMG]"+myimg.value+"[/ img]"; target.select(); js=target.createTextRange(); js.execCommand("Copy"); alert("复制成功!"); } </ script > |
六、复制 span 标记中的内容
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | < 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 > |
七、浏览器兼容 copyToClipboard("拷贝内容")
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | function copyToClipboard(txt) { if (window.clipboardData) { window.clipboardData.clearData(); clipboardData.setData( "Text" , txt); alert( "复制成功!" ); } else if (navigator.userAgent.indexOf( "Opera" ) != -1) { window.location = txt; } else if (window.netscape) { try { netscape.security.PrivilegeManager.enablePrivilege( "UniversalXPConnect" ); } catch (e) { alert( "被浏览器拒绝!\n请在浏览器地址栏输入‘about:config‘并回车\n然后将 ‘signed.applets.codebase_principal_support‘设置为‘true‘" ); } var clip = Components.classes[ ‘@mozilla.org/widget/clipboard;1‘ ].createInstance(Components.interfaces.nsIClipboard); if (!clip) return ; var trans = Components.classes[ ‘@mozilla.org/widget/transferable;1‘ ].createInstance(Components.interfaces.nsITransferable); if (!trans) return ; trans.addDataFlavor( "text/unicode" ); var str = new Object(); var len = new Object(); var str = Components.classes[ "@mozilla.org/supports-string;1" ].createInstance(Components.interfaces.nsISupportsString); var copytext = txt; str.data = http://www.mamicode.com/copytext; trans.setTransferData( "text/unicode" , str, copytext.length * 2); var clipid = Components.interfaces.nsIClipboard; if (!clip) return false ; clip.setData(trans, null , clipid.kGlobalClipboard); alert( "复制成功!" ); } } |
八、兼容各大浏览器的复制代码(结合ZeroClipboard.js)
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | < html > < head > < title >Zero Clipboard Test</ title > < script type = "text/javascript" src = "ZeroClipboard.js" ></ script > < script language = "JavaScript" > var clip = null; function $(id) { return document.getElementById(id); } function init() { clip = new ZeroClipboard.Client(); clip.setHandCursor(true); clip.addEventListener(‘mouseOver‘, function (client) { // update the text on mouse over clip.setText( $(‘fe_text‘).value ); }); clip.addEventListener(‘complete‘, function (client, text) { //debugstr("Copied text to clipboard: " + text ); alert("该地址已经复制,你可以使用Ctrl+V 粘贴。"); }); clip.glue(‘clip_button‘, ‘clip_container‘ ); } </ script > </ head > < body onLoad = "init()" > < input id = "fe_text" cols = 50 rows = 5 value=http://www.mamicode.com/复制内容文本1 > < span id = "clip_container" >< span id = "clip_button" >< b >复制</ b ></ span ></ span > </ body > </ html >
|
js copy
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。