1. 程式人生 > >JS實現各種複製到剪貼簿

JS實現各種複製到剪貼簿

一、實現點選按鈕,複製文字框中的的內容

<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 上的好友

<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

<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>

六、複製 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>

七、瀏覽器相容  copyToClipboard("拷貝內容")
 

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 = 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)

<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=複製內容文字1 > <span id="clip_container"><span id="clip_button"><b>複製</b></span></span> </body> </html