【转】跨浏览器“复制到粘贴板”JavaScript代码

非原创,来源网络。感谢原作者奉献如此精彩文章。  http://www.cnblogs.com/JustinYoung/articles/1018752.html

<! doctype html public " -//W3C//DTD XHTML 1.0 Strict//EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd " >
< html xmlns = " http://www.w3.org/1999/xhtml " >
< head >
< meta http - equiv = " Content-Type " content = " text/html; charset=utf-8 " / >
< meta name = " Keywords " content = " YES!B/S! " / >
< meta name = " Description " content = " This page is from http://Justinyoung.cnblogs.com " / >
< title > CSS / Javascript demo< / title >
< script type = " text/javascript " language = " javascript " >
function test() {
copyToClipboard(
"dddd");
}

copyToClipboard
= function (txt) {
if(window.clipboardData) {
window.clipboardData.clearData();
window.clipboardData.setData(
"Text", txt);
}
elseif(navigator.userAgent.indexOf("Opera") !=-1) {
window.location
= txt;
}
elseif (window.netscape) {
try{
netscape.security.PrivilegeManager.enablePrivilege(
"UniversalXPConnect");
}
catch (e) {
alert(
"您的firefox安全限制限制您进行剪贴板操作,请打开’about:config’将signed.applets.codebase_principal_support’设置为true’之后重试");
returnfalse;
}

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)
returnfalse;
clip.setData(trans,
null,clipid.kGlobalClipboard);
}

}

< / script>
< / head>
< body >
< button onclick = " test(); " > 复制到粘贴板 < / button>
< / body>
< / html>

转载于:https://www.cnblogs.com/w3live/archive/2012/04/24/2468234.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值