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

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

<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

以上是 js实现各种复制到剪贴板的方法(分享) 的全部内容, 来源链接: utcz.com/z/314421.html

回到顶部