前端录网站,记录前端点点滴滴,帮助程序猿快速成长!

复制内容时自动添加版权来源的Js代码

js
这是一个鸡肋的功能,在别人复制你网站内容时自动在复制内容后面添加上自己网站的名称和被复制内容当前页面的地址,说它鸡肋是因为在我们这样的网络里说版权有点让人害羞,百度打开搜索个东西,得到的结果常常是抄来抄去的,这种功能加不加其实起不到什么作用。

就是这个自动添加版权的代码本身,我都不知道版权是谁的。

我自己是没加这个功能,不过之所以分享这个代码是因为它在许多浏览器下都起作用,所以满留着。

function addCopyright() {
    var Original = "转自【我主页】:" + location.href; //修改你的网站名称
    if ("function" == typeof window.getSelection) {
        var c = window.getSelection();
        if ("Microsoft Internet Explorer" == navigator.appName && navigator.appVersion.match(/MSIE ([\d.]+)/)[1] >= 10 || "Opera" == navigator.appName) {
            var g = c.getRangeAt(0),
            h = document.createElement("span");
            h.appendChild(g.cloneContents()),
            g.insertNode(h);
            var i = h.innerHTML.replace(/(?:\n|\r\n|\r)/gi, "").replace(/<\s*script[^>]*>[\s\S]*?<\/script>/gim, "").replace(/<\s*style[^>]*>[\s\S]*?<\/style>/gim, "").replace(/<!--.*?-->/gim, "").replace(/<!DOCTYPE.*?>/gi, "");
            try {
                document.getElementsByTagName("body")[0].removeChild(h)
            } catch(f) {
                h.style.display = "none",
                h.innerHTML = ""
            }
        } else var d = "" + c;
        var e = document.getElementsByTagName("body")[0],
        f = document.createElement("div");
        f.style.position = "absolute",
        f.style.left = "-99999px",
        e.appendChild(f),
        f.innerHTML = d.replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, "$1<br />$2") + "<br />" + Original,
        c.selectAllChildren(f),
        setTimeout(function() {
            e.removeChild(f)
        },
        0)
    } else if ("object" == typeof document.selection.createRange) {
        event.returnValue = !1;
        var c = document.selection.createRange().text;
        window.clipboardData.setData("Text", c + "\n" + Original)
    }
};
document.body.oncopy = addCopyright;

只要修改代码里面的汉字部分就好,自动添加的格式是:转自【网站名】:复制当前页的地址



转载请注明:前端录»复制内容时自动添加版权来源的Js代码