网页实现复制到剪贴板js

<textarea cols=90 rows=4 id="id_p_code">
<script type="text/javascript"> var u_aid=4193;</script>
<script type="text/javascript" src="http://www.meto.com/pop/popcode.js"></script>
</textarea><button onclick="copyCode('id_p_code');return false;">复制到剪贴板</button><BR>

 

<script type="text/javascript">
function copyCode(id){
    var testCode=document.getElementById(id).value;
    if(copy2Clipboard(testCode)!=false){
        alert("代码已经复制到粘贴板,你可以使用Ctrl+V 贴到需要的地方去了哦!  ");
    }
}
copy2Clipboard=function(txt){
    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("您的firefox安全限制限制您进行剪贴板操作,请打开’about:config’将signed.applets.codebase_principal_support’设置为true’之后重试,相对路径为firefox根目录/greprefs/all.js");
            return false;
        }
        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);
    }
}
</script>

你可能感兴趣的:(function,object,Opera,null,firefox)