当前位置: 代码迷 >> JavaScript >> 谷歌浏览器 如何用js复制东西到剪贴板啊
  详细解决方案

谷歌浏览器 如何用js复制东西到剪贴板啊

热度:174   发布时间:2012-06-22 16:16:32.0
谷歌浏览器 怎么用js复制东西到剪贴板啊?
ie可以用但是在谷歌个火狐上不能 有没有好的方法让他们都能用啊 求教


------解决方案--------------------
JScript code
function copyToClipboard(txt) { 
    if(window.clipboardData) 
    { 
        window.clipboardData.clearData();   
        window.clipboardData.setData("Text",txt);    
        alert("网址复制成功!快用Ctrl+V粘贴到QQ,MSN中发送给好友吧!")    
    } 
    else if(navigator.userAgent.indexOf("Opera") != -1) 
    {    
        window.location = txt;  
        alert("网址复制成功!快用Ctrl+V粘贴到QQ,MSN中发送给好友吧!")    
    } 
    else if (window.netscape) 
    {    
        try {    
            netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");    
        } 
        catch (e) 
        {    
            alert("被浏览器拒绝!\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'");    
        }    
        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);    
        alert("网址复制成功!快用Ctrl+V粘贴到QQ,MSN中发送给好友吧!")    
    }   
}

copyToClipboard('ABCD')

------解决方案--------------------
http://www.piaoyi.org/web-css/js-copy-clipboard.html

JS复制内容到剪贴板: 兼容IE、Firefox、Chrome、Safari所有浏览器
------解决方案--------------------
纯js 无法兼容
------解决方案--------------------
chrome下有这个方法的,但是他是绑定在事件上面的,如下面这段代码
JScript code

if (CurrentMode == "Edit") {
    return e.clipboardData.getData("text/html"); //获取HTML内容
 }
 else {
    return e.clipboardData.getData("text/plain"); //获取文字内容
 }

------解决方案--------------------
啊,无视我把,我没注意到你是要往剪贴板复制数据
  相关解决方案