解决立刻给分啊

解决方案 »

  1.   

    是获取剪贴板的内容,还是设置剪贴板的内容。
    设置剪贴板内容
    function browserCopy(text){     
        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("被浏览器拒绝!\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();
            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);
        }
    }如果是获取剪贴板的内容,先运行paste()方法,将内容贴到隐藏文本域中。再获取这个文本域的内容即可
    execCommand paste也行
      

  2.   

    Chrome和Safari应该类似的。支持读取
    someDomNode.onpaste = function(e) { 
        var paste = e.clipboardData && e.clipboardData.getData ? 
            e.clipboardData.getData('text/plain') :                // Standard 
            window.clipboardData && window.clipboardData.getData ? 
            window.clipboardData.getData('Text') :                 // MS 
            false; 
        if(paste) { 
            // ... 
        } 
    };
      

  3.   

    处于安全原因,只能在onpaste事件里使用http://developer.apple.com/library/mac/#documentation/AppleApplications/Conceptual/SafariJSProgTopics/Tasks/CopyAndPaste.html