js實現複製功能

ndblog發表於2015-05-27

JS 點選複製Copy

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

複製程式碼
 1 <script type="text/javascript">
 2 function copyUrl2()
 3 {
 4 var Url2=document.getElementById("biao1");
 5 Url2.select(); // 選擇物件
 6 document.execCommand("Copy"); // 執行瀏覽器複製命令
 7 alert("已複製好,可貼粘。");
 8 }
 9 </script>
10 <textarea cols="20" rows="10" id="biao1">使用者定義的程式碼區域</textarea>
11 <input type="button" onClick="copyUrl2()" value="點選複製程式碼" />
複製程式碼

2.複製專題地址和 url 地址,傳給 QQ/MSN 上的好友

複製程式碼
 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
 5 <title>Js複製程式碼</title>
 6 </head>
 7 <body>
 8 <p>
 9 <input type="button" name="anniu1" onClick=`copyToClipBoard()` value="複製專題地址和url地址,傳給QQ/MSN上的好友">
10 <script language="javascript">
11 function copyToClipBoard(){
12 var clipBoardContent="";
13 clipBoardContent+=document.title;
14 clipBoardContent+="";
15 clipBoardContent+=this.location.href;
16 window.clipboardData.setData("Text",clipBoardContent);
17 alert("複製成功,請貼上到你的QQ/MSN上推薦給你的好友");
18 }
19 </script>
複製程式碼

3.直接複製 url

複製程式碼
1 <input type="button" name="anniu2" onClick=`copyUrl()` value="複製URL地址">
2 <script language="javascript">
3 function copyUrl()
4 {
5 var clipBoardContent=this.location.href;
6 window.clipboardData.setData("Text",clipBoardContent);
7 alert("複製成功!");
8 }
9 </script>
複製程式碼

4.點選文字框時,複製文字框裡面的內容

複製程式碼
1 <input onclick="oCopy(this)" value="你好.要copy的內容!">
2 <script language="javascript">
3 function oCopy(obj){
4 obj.select();
5 js=obj.createTextRange();
6 js.execCommand("Copy")
7 alert("複製成功!");
8 }
9 </script>
複製程式碼

5.複製文字框或者隱藏域中的內容

複製程式碼
 1 <script language="javascript">
 2 function CopyUrl(target){
 3 target.value=myimg.value;
 4 target.select();  
 5 js=myimg.createTextRange();  
 6 js.execCommand("Copy");
 7 alert("複製成功!");
 8 }
 9 function AddImg(target){
10 target.value="[IMG]"+myimg.value+"[/ img]";
11 target.select();
12 js=target.createTextRange();  
13 js.execCommand("Copy");
14 alert("複製成功!");
15 }
16 </script>
複製程式碼

6.複製 span 標記中的內容

複製程式碼
 1 <script type="text/javascript">
 2 </script>
 3 <br />
 4 <br />
 5 <script type="text/javascript">function copyText(obj)  
 6 {
 7 var rng = document.body.createTextRange();
 8 rng.moveToElementText(obj);
 9 rng.scrollIntoView();
10 rng.select();
11 rng.execCommand("Copy");
12 rng.collapse(false);
13 alert("複製成功!");
14 }
15 </script>
複製程式碼

 7.瀏覽器相容  copyToClipboard(“拷貝內容”)

複製程式碼
 1  function copyToClipboard(txt) {
 2             if (window.clipboardData) {
 3                 window.clipboardData.clearData();
 4                 clipboardData.setData("Text", txt);
 5                 alert("複製成功!");
 6 
 7             } else if (navigator.userAgent.indexOf("Opera") != -1) {
 8                 window.location = txt;
 9             } else if (window.netscape) {
10                 try {
11                     netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
12                 } catch (e) {
13                     alert("被瀏覽器拒絕!
請在瀏覽器位址列輸入`about:config`並回車
然後將 `signed.applets.codebase_principal_support`設定為`true`");
14                 }
15                 var clip = Components.classes[`@mozilla.org/widget/clipboard;1`].createInstance(Components.interfaces.nsIClipboard);
16                 if (!clip)
17                     return;
18                 var trans = Components.classes[`@mozilla.org/widget/transferable;1`].createInstance(Components.interfaces.nsITransferable);
19                 if (!trans)
20                     return;
21                 trans.addDataFlavor("text/unicode");
22                 var str = new Object();
23                 var len = new Object();
24                 var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
25                 var copytext = txt;
26                 str.data = copytext;
27                 trans.setTransferData("text/unicode", str, copytext.length * 2);
28                 var clipid = Components.interfaces.nsIClipboard;
29                 if (!clip)
30                     return false;
31                 clip.setData(trans, null, clipid.kGlobalClipboard);
32                 alert("複製成功!");
33             }
34         }
複製程式碼

 

js實現但擊自動選中文字

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>自動選擇文字框/編輯框中的文字</title>
<script type="text/javascript">
function Myselect_txt(){
  if (document.form1.title.focus){
    document.form1.title.select();}
}
function Myselect_txtarea(){
  if (document.form1.content.focus){
    document.form1.content.select();}
}
</script>
</head>
<body style="font-size:12px">
<table width="443" height="97" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#f9f9f9">
  <form name="form1">
    <tr bgcolor="#214994">
      <td height="25" colspan="2"><div align="center"><font color="#FFFFFF">新聞資訊修改</font></div></td>
    </tr>
    <tr>
      <td width="80" height="28"><div align="right"><font color="#214994">新聞標題:</font></div></td>
      <td width="363"><input name="title" type="text" size="50" value="今日新聞頭條" onClick="Myselect_txt()"></td>
    </tr>
    <tr>
      <td height="20"><div align="right"><font color="#214994">新聞內容:</font></div></td>
      <td rowspan="2"><textarea name="content" cols="50" rows="6" onClick="Myselect_txtarea()">今日,據相關方面報導,...</textarea></td>
    </tr>
    <tr>
      <td height="10">&nbsp;</td>
    </tr>
    <tr>
      <td height="32" colspan="2">
        <div align="center">
          <input name="add" type="submit" id="add" value="新增">
&nbsp;
          <input name="Submit" type="reset" value="重置">
      </div></td>
    </tr>
  </form>
</table>
</body>
</html>

 

作者:Tyler Ning

出處:http://www.cnblogs.com/tylerdonet/

本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,如有問題,可以通過以下郵箱地址williamningdong@gmail.com
 聯絡我,非常感謝。


相關文章