javascript 的点击复制事件

function copy()
{
    var text=document.getElementById("txtUser").value;
    if(copy2Clipboard(text)!=false)
    { 
        alert("复制成功了! "); 
    } 
}
function copy2Clipboard(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("您使用的浏览器不支持此复制功能,请使用Ctrl+C或鼠标右键。"); 
            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); 
        return true;
    } 
}

 

posted @ 2015-08-21 15:54  李照耀  阅读(2043)  评论(0编辑  收藏  举报