js复制链接到剪贴板

来源:互联网 发布:工程预算定额软件 编辑:程序博客网 时间:2024/05/17 21:51
第一种方式:(不兼容chrome,ie可以)引用:http://bibo531651225.iteye.com/blog/1753160  <script>  //复制链接    function copyToClipboard() {      var txt = $("#aflink").val();         if(window.clipboardData) {                    window.clipboardData.clearData();                    window.clipboardData.setData("Text", txt);            } else if(navigator.userAgent.indexOf("Opera") != -1) {                 window.location = txt;            } else if (window.netscape) {                 try {                      netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");                 } catch (e) {                      alert("您的浏览器设置不允许快捷拷贝,请直接复制页面里的链接");                    }                 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("复制成功!")            }       }    </script>=======================<input type="hidden" name="aflink" id="aflink" value="http://localhost:7001/OAForum/TopicServlet?doaction=findById&id=${topicBean.to.id}&isfront=true"/>======================== <a href="javascript:copyToClipboard();"><font color="yellow">复制链接</font></a>



第二种方式:(兼容ie\chrome)
//js,swf见附件

    <script type="text/javascript" src="<%=path %>/scripts/public/copylink/ZeroClipboard.js">
</script>

<script type="text/javascript">
var clip = null;
var clipBoardContent=this.location.href;
ZeroClipboard.setMoviePath("<%=path %>/scripts/public/copylink/ZeroClipboard.swf");
$(document).ready(function(){
clip = new ZeroClipboard.Client(); 
clip.setHandCursor(true); 
clip.setText(clipBoardContent); //link
clip.glue("copy-button");
clip.addEventListener("complete", function(){
alert("代码已复制到剪贴板!");
});
});
</script>

<input type="button" value="复制链接" id="copy-button" />