js复制到剪切板,兼容chrome,Firefox

阿紫 posted @ 2012年11月22日 15:30 in javascript , 12903 阅读

    在做短网址的过程中遇到一个问题,需要做一个按钮,点击的时候将生成的短网址复制到剪切板,开始的代码是这样写的:

1
2
3
4
5
6
var str=document.getElementById('url').value;
if(window.clipboardData){
         window.clipboardData.clearData();                                                      
         window.clipboardData.setData("Text",str);                                
         alert("复制成功!");
 }

但是这种方法只在IE下有效,试了网上说的一些方法,但是效果都不大好,甚至需要用户去设置浏览器,最后看到一个说是需要一个ZeroClipboard.js,依靠flash来中转,测试成功。这是ZeroClipboard.js的下载地址:https://code.google.com/p/zeroclipboard/   测试代码如下:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript" src="ZeroClipboard.js"></script>
<script language="JavaScript">       
    function toClipboard(ID) {
                var str=document.getElementById('url').value;
        var clip = new ZeroClipboard.Client();
        clip.setHandCursor( true );
        clip.setText(str);     
        clip.addEventListener('complete', function (client, text) {
                alert("复制成功!!");
                      });
        clip.glue(strID);
    }
</script>
 
<input type="button" value="copy" onclick="javascript:toClipboard(this.id);"/>

但是在火狐下还是不兼容......

-------------------------------------------------------------------------------------------------------------------------------------------

    好吧,今天在Firefox下测试的时候又可以了。。。

  • 无匹配
Avatar_small
依云 说:
2012年11月22日 19:34

我刚刚试过了 zeroclipboard 的官方测试页面,火狐没问题的呀。

Avatar_small
阿紫 说:
2012年11月23日 16:08

奇怪了,我今天测试也没问题,昨天就是不行,连官方测试页面也不行

seo service UK 说:
2024年2月22日 21:18

"After reading your article I was amazed. I know that you explain it very well. And I hope that other readers will also experience how I feel after reading your article.


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter