zoukankan      html  css  js  c++  java
  • js点击复制兼容Firefox

     1 <script type="text/javascript">
     2 function copyCode(id){
     3     var testCode=document.getElementById(id).value;
     4     if(copy2Clipboard(testCode)!=false){
     5         alert("生成的代码已经复制到粘贴板,你可以使用Ctrl+V 贴到需要的地方去了哦!  ");
     6     }
     7 }
     8 copy2Clipboard=function(txt){
     9     if(window.clipboardData){
    10         window.clipboardData.clearData();
    11         window.clipboardData.setData("Text",txt);
    12     }
    13     else if(navigator.userAgent.indexOf("Opera")!=-1){
    14         window.location=txt;
    15     }
    16     else if(window.netscape){
    17         try{
    18             netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
    19         }
    20         catch(e){
    21             alert("您的firefox安全限制限制您进行剪贴板操作,请打开’about:config’将signed.applets.codebase_principal_support’设置为true’之后重试,相对路径为firefox根目录/greprefs/all.js");
    22             return false;
    23         }
    24         var clip=Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
    25         if(!clip)return;
    26         var trans=Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
    27         if(!trans)return;
    28         trans.addDataFlavor('text/unicode');
    29         var str=new Object();
    30         var len=new Object();
    31         var str=Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
    32         var copytext=txt;str.data=copytext;
    33         trans.setTransferData("text/unicode",str,copytext.length*2);
    34         var clipid=Components.interfaces.nsIClipboard;
    35         if(!clip)return false;
    36         clip.setData(trans,null,clipid.kGlobalClipboard);
    37     }
    38 }
    39 </script>
    40 <div>
    41 <a href="#" target="_blank"> [<a href="#" onclick="copyCode('txtTestCode1');return false;">点击复制1</a>]<br>
    42 <textarea rows=2 id="txtTestCode1" style="500px;font-family: Verdana, Arial;font-size:12px;height:55px;border:1px solid #999999;">复制内容1</textarea>
    43 </div>
    44 <br><br>
    45 <div>
    46 <a href="#" target="_blank"> [<a href="#" onclick="copyCode('txtTestCode2');return false;">点击复制2</a>]<br>
    47 <textarea rows=2 id="txtTestCode2" style="500px;font-family: Verdana, Arial;font-size:12px;height:55px;border:1px solid #999999;">复制内容2</textarea>
    48 </div>
    49 <br><br>
    50 <div>
    51 <a href="#" target="_blank"> [<a href="#" onclick="copyCode('txtTestCode3');return false;">点击复制3</a>]<br>
    52 <textarea rows=2 id="txtTestCode3" style="500px;font-family: Verdana, Arial;font-size:12px;height:55px;border:1px solid #999999;">复制内容3</textarea>
    53 </div>
    54 <br><br>
  • 相关阅读:
    glibcxx升级
    content security policy directive
    创建AD域用户,并用之在客户端操作远程桌面
    windows安装ad域
    Python切片
    Python字符串格式化
    一段比较有意思的C++代码
    MySql数据库导入新的表里面 php操作,网站文章批量导入到新网站
    [P6672] [清华集训2016] 你的生命已如风中残烛 题解
    软件测试基础之测试分类
  • 原文地址:https://www.cnblogs.com/simman/p/2240676.html
Copyright © 2011-2022 走看看