支持Firefox和IE的文本复制Javascript

本文介绍了一个能够在不同浏览器环境下实现文本复制到剪贴板的JavaScript函数。该函数通过检测当前浏览器环境并采用相应的API来确保跨浏览器兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. function copyToClipboard(text){
  2.     if(text==null||text=='undefined')
  3.             return;
  4.                 
  5.             //window.clipboardData.setData("Text",text);
  6.    if (window.clipboardData){
  7.          window.clipboardData.setData("Text", text);
  8.        }
  9.    else if (window.netscape){
  10.        netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
  11.        var clip = Components.classes['@mozilla.org/widget/clipboard;1']
  12.                      .createInstance(Components.interfaces.nsIClipboard);
  13.        if (!clip) return;
  14.        var trans = Components.classes['@mozilla.org/widget/transferable;1']
  15.                       .createInstance(Components.interfaces.nsITransferable);
  16.        if (!trans) return;
  17.        trans.addDataFlavor('text/unicode');
  18.        
  19.        var str = new Object();
  20.        var len = new Object();
  21.        
  22.        var str = Components.classes["@mozilla.org/supports-string;1"]
  23.                     .createInstance(Components.interfaces.nsISupportsString);
  24.        
  25.        var copytext=text;
  26.        
  27.        str.data=copytext;
  28.        
  29.        trans.setTransferData("text/unicode",str,copytext.length*2);
  30.        
  31.        var clipid=Components.interfaces.nsIClipboard;
  32.        
  33.        if (!clip) return ;
  34.        
  35.        clip.setData(trans,null,clipid.kGlobalClipboard);
  36.        
  37.        }else{
  38.           window.alert("不支持该浏览器的复制功能,请手动复制");
  39.           return;
  40.        }
  41.         window.alert("已复制成功,请直接粘贴$codeFormat");
  42.     }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值