js 複製連結,支援IE,火狐等瀏覽器

程式設計師成長史發表於2011-01-11

相信大家在用js複製連結的時候,出現火狐不支援的情況,下面我分別列出支援IE和所有瀏覽器通用的程式碼
這個是隻IE支援:
<!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>
</p>
</body>
</html>

這個所有瀏覽器都可以使用的
<script type="text/javascript">
function copy_url(){
var clipBoardContent="";
clipBoardContent+=document.title; //獲取標題
clipBoardContent+="/n";
clipBoardContent+=this.location.href; //獲取地址
if (window.clipboardData){
window.clipboardData.setData("Text", clipBoardContent);}
else if (window.netscape){
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
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("複製成功,您可以傳送給你的好友啦!");
}
</script>
<a href="javascript:copy_url();">複製連結</a>

相關文章