实现点击复制功能的JavaScript代码示例

作者:木棉

时间:2026-10-27

浏览:504

本文提供了一段用于实现网页内容点击复制功能的JavaScript代码。该脚本通过判断浏览器类型(IE、Opera、Firefox等)调用不同的API接口,如window.clipboardData或netscape组件,以完成文本写入剪贴板的操作,并包含相应的成功提示与安全权限处理逻辑。

文章目录

实现点击复制功能的JavaScript代码示例

代码示例如下:

function copy_clip() {
var url = $("#back_info").html(); // 获取待复制文本
var txt = url.substring(url.indexOf(":") + 1, url.length);
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("您的firefox安全限制限制您进行剪贴板操作,请在新窗口的地址栏里输入'about:config'然后找到'signed.applets.codebase_principal_support'设置为true'");
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);
    }
}

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章