jquery 点击文本框复制内容到剪贴板的实现代码

发布时间:2019-08-31编辑:脚本学堂
本文介绍下,jquery实现的点击文本框,就会复制其中的内容到剪贴板的一段代码,有需要的朋友参考下。

分享一个jquery的例子,点击文本框时,复制内容到剪贴板。

代码如下:

//方法1 点击文本框复制其内容到剪贴板
function copyToClipboard(txt) {
    if (window.clipboardData) {
        window.clipboardData.clearData();
        window.clipboardData.setData("Text", txt);
        alert("已经成功复制到剪帖板上!");
    } 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();
        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("已经成功复制到剪帖板上!");
    }
}
 
//方法2 点击文本框复制其内容到剪贴板上
function setCopyLink() {
    $("#txt_CopyLink").val(document.URL)
    .focus(function () {
        $(this).css({ "background-color": "#ddd" }).select();
        copyToClipboard($("#txt_CopyLink").val());
    }).blur(function () {
        $(this).css({ "background-color": "#fff" });
    });
}