您的位置:首页 > Web前端 > JavaScript

JS代码点击复制给好友,支持IE、火狐浏览器

2013-05-22 15:45 162 查看
整理一个支持多浏览器的点击复制代码,可能从网上找的好多代码只能在IE下执行,在火狐下就白搭,咋办!?

看代码:

 

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>copyToClipBoard</title>
</head>
<body>
<script type="text/javascript">
function copyToClipBoard(){
var clipBoardContent="";
//如果你想获取当前页面的URL
clipBoardContent+=document.location.href;
if(window.clipboardData){
window.clipboardData.clearData();
window.clipboardData.setData("Text", clipBoardContent);
}else if(navigator.userAgent.indexOf("Opera") != -1){
window.location = clipBoardContent;
}else if (window.netscape){
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}catch (e){
alert("您的当前浏览器设置已关闭此功能!请按以下步骤开启此功能!\n新开一个浏览器,在浏览器地址栏输入'about:config'并回车。\n然后找到'signed.applets.codebase_principal_support'项,双击后设置为'true'。\n声明:本功能不会危极您计算机或数据的安全!");
}
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 = clipBoardContent;
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("地址已成功复制!请粘贴(ctrl+v)分享给好友\n"+clipBoardContent);
return true;
}
</script>
<input type="button" onClick="copyToClipBoard()" value="复制文章链接" />
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息