JS网页点击复制代码总结
来源:自学PHP网
时间:2014-09-19 14:47 作者:
阅读:次
[导读] 在js中点击复制内容最简单的办法就是直接使用createTextRange()与execCommand()然后还有像window.clipboardData.setData之类的,下面我来总结一下各种应用实例。...
例1
代码如下 |
复制代码 |
<script>
function oCopy(obj){
obj.select();
js=obj.createTextRange();
js.execCommand("Copy")
}
</script>
<input onclick="oCopy(this)" value="要copy的内容!">
|
例2
点击复制标题和地址的代码:
代码如下 |
复制代码 |
<title>标题</title>
<input type="button" name="Submit" onClick='copyToClipBoard()' value="复制专题地址,传给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>
|
三、点击复制文本框内容的代码:<br><br>
代码如下 |
复制代码 |
<script type="text/javascript">
function jsCopy(){
var e=document.getElementById("content");//对象是content
e.select(); //选择对象
document.execCommand("Copy"); //执行浏览器复制命令
alert("已复制好,可贴粘。");
}
</script>
<textarea cols="60" name="content" rows="2" id="content">www.52nx.net</textarea>
<input type=button value="复制" onclick="jsCopy()">
|
上面兼容性在不同浏览器可能会有差距了,下面我介绍一个非常不错的实例
代码如下 |
复制代码 |
function copy_clip() {
var url = $("#back_info").html(); //需要复制的内容
var txt = url.substring(url.indexOf(":") + 1, url.length);
if (window.clipboardData) {
window.clipboardData.clearData();
window.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("您的firefox安全限制限制您进行剪贴板操作,请在新窗口的地址栏里输入'about:config'然后找到'signed.applets.codebase_principal_support'设置为true'");
return false;
}
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);
}
}
|
|