js實現(xiàn)復制功能(多種方法集合)
更新時間:2018年01月06日 20:51:05 投稿:mdxy-dxy
這篇文章主要介紹了js實現(xiàn)復制功能(多種方法集合),需要的朋友可以參考下
1.實現(xiàn)點擊按鈕,復制文本框中的的內容
<script type="text/javascript">
function copyUrl2()
{
var Url2=document.getElementById("biao1");
Url2.select(); // 選擇對象
document.execCommand("Copy"); // 執(zhí)行瀏覽器復制命令
alert("已復制好,可貼粘。");
}
</script>
<textarea cols="20" rows="10" id="biao1">用戶定義的代碼區(qū)域</textarea>
<input type="button" onClick="copyUrl2()" value="點擊復制代碼" />
2.復制專題地址和 url 地址,傳給 QQ/MSN 上的好友
<!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>
3.直接復制 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>
4.點擊文本框時,復制文本框里面的內容
<input onclick="oCopy(this)" value="你好.要copy的內容!">
<script language="javascript">
function oCopy(obj){
obj.select();
js=obj.createTextRange();
js.execCommand("Copy")
alert("復制成功!");
}
</script>
5.復制文本框或者隱藏域中的內容
<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>
6.復制 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>
7.瀏覽器兼容 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("復制成功!");
}
}
js實現(xiàn)但擊自動選中文本
<!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()">今日,據(jù)相關方面報道,...</textarea></td>
</tr>
<tr>
<td height="10"> </td>
</tr>
<tr>
<td height="32" colspan="2">
<div align="center">
<input name="add" type="submit" id="add" value="添加">
<input name="Submit" type="reset" value="重置">
</div></td>
</tr>
</form>
</table>
</body>
</html>
當前最常用的最簡潔還是這個,代碼少,減少頁面加載速度
function copyToClipboard(txt) {
if(window.clipboardData){
window.clipboardData.clearData();
window.clipboardData.setData("Text", txt);
alert('復制成功!')
}else{
alert('請手動復制!')
}
}
到此介紹這么多了,希望大家多多關注,腳本之家以前的文章。
相關文章
stream.js 一個很小、完全獨立的Javascript類庫
stream.js 是一個很小、完全獨立的Javascript類庫,它為你提供了一個新的Javascript數(shù)據(jù)結構:streams2011-10-10
關于JavaScript 數(shù)組你應該知道的事情(推薦)
這篇文章主要介紹了JavaScript 數(shù)組,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04
通過JavaScript實現(xiàn)撲克牌游戲的示例代碼
這篇文章主要為大家詳細介紹了JavaScript如何通過面向對象實現(xiàn)一個簡單的撲克牌游戲,文中的示例代碼代碼講解詳細,感興趣的可以學習一下2022-07-07

