Vui lòng liên hệ chúng tôi qua Zalo Contact

Tổng hợp code Javascript chống Copy, View-source, F12, Ctrl + U cho website/blog

Trong bài viết này, Tricker Channel sẽ tổng hợp một số đoạn mã JavaScript giúp chống copy, view, F12, và Ctrl + U trên các trang web và blog. Với sự phát triển của công nghệ, việc bảo vệ nội dung trên trang web trở nên quan trọng hơn bao giờ hết để ngăn chặn việc sao chép trái phép và truy cập trái phép vào mã nguồn.

- Trong bài viết này, bạn sẽ tìm hiểu về một số phương pháp khác nhau để ngăn chặn việc copy nội dung bằng cách vô hiệu hóa các phím tắt như Ctrl + C và Ctrl + A. Ngoài ra, bạn cũng sẽ được hướng dẫn cách ngăn chặn việc truy cập vào mã nguồn của trang web bằng cách vô hiệu hóa các phím tắt như F12 và Ctrl + U.

- Bài viết cung cấp mã nguồn chi tiết và hướng dẫn sử dụng cho mỗi phương pháp, giúp bạn áp dụng chúng vào trang web hoặc blog của mình một cách dễ dàng. Tuy nhiên, cần lưu ý rằng các phương pháp này chỉ là biện pháp bảo vệ cơ bản và không thể ngăn chặn hoàn toàn việc sao chép hay truy cập trái phép vào nội dung.

Cách 1

Chống chuột trái lên trang web

- Bạn dán đoạn code bên dưới vào trước thẻ đóng head </head>
<style type='text/css'>
    body {
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        -o-user-select: none;
        user-select: none;
    }
</style>

Chống chuột phải lên trang web

- Bạn dán đoạn code bên dưới vào trước thẻ đóng body </body>
<script type='text/javascript'>
    var message = "NoRightClicking";
    function defeatIE() {
        if (document.all) {
            (message);
            return false;
        }
    }
    function defeatNS(e) {
        if (document.layers || (document.getElementById && !document.all)) {
            if (e.which == 2 || e.which == 3) {
                (message);
                return false;
            }
        }
    }
    if (document.layers) {
        document.captureEvents(Event.MOUSEDOWN);
        document.onmousedown = defeatNS;
    } else {
        document.onmouseup = defeatNS;
        document.oncontextmenu = defeatIE;
    }
    document.oncontextmenu = new Function("return false")
</script>

Chống Ctrl + U và F12 để xem mã nguồn trang web

- Bạn dán đoạn code bên dưới vào trước thẻ đóng body </body>
<script type='text/javascript'>
    checkCtrl = false $('*').keydown(function(e) {
        if (e.keyCode == '17') {
            checkCtrl = false
        }
    }).keyup(function(ev) {
        if (ev.keyCode == '17') {
            checkCtrl = false
        }
    }).keydown(function(event) {
        if (checkCtrl) {
            if (event.keyCode == '85') {
                return false;
            }
        }
    })
</script>

Tiếp theo bạn thay thế nội dung tại thẻ <body>

- Bạn cần phải thay thế đoạn code bên dưới ở dòng <body> để chạy code.

<body onkeydown="return false">

Cách 2

Thực tế chưa có một biện pháp triệt để nào chống xem mã nguồn trang web hay chống coppy vì đó là tính năng dành cho các nhà lập trình. Tuy nhiên ta có thể hạn chế việc xem mã nguồn bằng việc sử dụng javascript.
Thủ thuật này khá đơn giản bạn chỉ cần chèn 1 đoạn js vào trước thẻ đóng </body>
<script type='text/javascript'>//<![CDATA[
shortcut = {
    all_shortcuts: {},
    add: function(a, b, c) {
        var d = {
            type: "keydown",
            propagate: !1,
            disable_in_input: !1,
            target: document,
            keycode: !1
        };
        if (c)
            for (var e in d) "undefined" == typeof c[e] && (c[e] = d[e]);
        else c = d;
        d = c.target, "string" == typeof c.target && (d = document.getElementById(c.target)), a = a.toLowerCase(), e = function(d) {
            d = d || window.event;
            if (c.disable_in_input) {
                var e;
                d.target ? e = d.target : d.srcElement && (e = d.srcElement), 3 == e.nodeType && (e = e.parentNode);
                if ("INPUT" == e.tagName || "TEXTAREA" == e.tagName) return
            }
            d.keyCode ? code = d.keyCode : d.which && (code = d.which), e = String.fromCharCode(code).toLowerCase(), 188 == code && (e = ","), 190 == code && (e = ".");
            var f = a.split("+"),
                g = 0,
                h = {
                    "`": "~",
                    1: "!",
                    2: "@",
                    3: "#",
                    4: "$",
                    5: "%",
                    6: "^",
                    7: "&",
                    8: "*",
                    9: "(",
                    0: ")",
                    "-": "_",
                    "=": "+",
                    ";": ":",
                    "'": '"',
                    ",": "<",
                    ".": ">",
                    "/": "?",
                    "\\": "|"
                },
                i = {
                    esc: 27,
                    escape: 27,
                    tab: 9,
                    space: 32,
                    "return": 13,
                    enter: 13,
                    backspace: 8,
                    scrolllock: 145,
                    scroll_lock: 145,
                    scroll: 145,
                    capslock: 20,
                    caps_lock: 20,
                    caps: 20,
                    numlock: 144,
                    num_lock: 144,
                    num: 144,
                    pause: 19,
                    "break": 19,
                    insert: 45,
                    home: 36,
                    "delete": 46,
                    end: 35,
                    pageup: 33,
                    page_up: 33,
                    pu: 33,
                    pagedown: 34,
                    page_down: 34,
                    pd: 34,
                    left: 37,
                    up: 38,
                    right: 39,
                    down: 40,
                    f1: 112,
                    f2: 113,
                    f3: 114,
                    f4: 115,
                    f5: 116,
                    f6: 117,
                    f7: 118,
                    f8: 119,
                    f9: 120,
                    f10: 121,
                    f11: 122,
                    f12: 123
                },
                j = !1,
                l = !1,
                m = !1,
                n = !1,
                o = !1,
                p = !1,
                q = !1,
                r = !1;
            d.ctrlKey && (n = !0), d.shiftKey && (l = !0), d.altKey && (p = !0), d.metaKey && (r = !0);
            for (var s = 0; k = f[s], s < f.length; s++) "ctrl" == k || "control" == k ? (g++, m = !0) : "shift" == k ? (g++, j = !0) : "alt" == k ? (g++, o = !0) : "meta" == k ? (g++, q = !0) : 1 < k.length ? i[k] == code && g++ : c.keycode ? c.keycode == code && g++ : e == k ? g++ : h[e] && d.shiftKey && (e = h[e], e == k && g++);
            if (g == f.length && n == m && l == j && p == o && r == q && (b(d), !c.propagate)) return d.cancelBubble = !0, d.returnValue = !1, d.stopPropagation && (d.stopPropagation(), d.preventDefault()), !1
        }, this.all_shortcuts[a] = {
            callback: e,
            target: d,
            event: c.type
        }, d.addEventListener ? d.addEventListener(c.type, e, !1) : d.attachEvent ? d.attachEvent("on" + c.type, e) : d["on" + c.type] = e
    },
    remove: function(a) {
        var a = a.toLowerCase(),
            b = this.all_shortcuts[a];
        delete this.all_shortcuts[a];
        if (b) {
            var a = b.event,
                c = b.target,
                b = b.callback;
            c.detachEvent ? c.detachEvent("on" + a, b) : c.removeEventListener ? c.removeEventListener(a, b, !1) : c["on" + a] = !1
        }
    }
}, shortcut.add("Ctrl+U", function() {
    top.location.href = "https://trickerchannelvn.blogspot.com/"
}), shortcut.add("F12", function() {
    top.location.href = "https://trickerchannelvn.blogspot.com/"
}), shortcut.add("Ctrl+Shift+I", function() {
    top.location.href = "https://trickerchannelvn.blogspot.com/"
}), shortcut.add("Ctrl+Shift+J", function() {
    top.location.href = "https://trickerchannelvn.blogspot.com/"
}), shortcut.add("Ctrl+S", function() {
    top.location.href = "https://trickerchannelvn.blogspot.com/"
}), shortcut.add("Ctrl+Shift+C", function() {
    top.location.href = "https://trickerchannelvn.blogspot.com/"
});
var message = "NoRightClicking";

function defeatIE() {
    if (document.all) {
        (message);
        return false;
    }
}

function defeatNS(e) {
    if (document.layers || (document.getElementById && !document.all)) {
        if (e.which == 2 || e.which == 3) {
            (message);
            return false;
        }
    }
}
if (document.layers) {
    document.captureEvents(Event.MOUSEDOWN);
    document.onmousedown = defeatNS;
} else {
    document.onmouseup = defeatNS;
    document.oncontextmenu = defeatIE;
}
document.oncontextmenu = new Function("return false")
//]]></script>

Chức năng của đoạn code này bao gồm

  • Chống chuột phải
  • Chuyển hướng khi phát hiện người dùng dùng phím tắt
Trong đó bạn cần thay https://trickerchannelvn.blogspot.com/ thành link chuyển hướng theo ý thích, bạn cũng có thể thêm không giới hạn các shortcut bằng cách nối tiếp vào code như trên.

Bên cạnh đó bạn cũng có thể dùng setInterval làm cản trở quá trình debug bằng cách thêm code sau:
<script type='text/javascript'>//<![CDATA[
setInterval(function() {
    debugger;
}, 1);
//]]></script>

Ngoài ra bạn cũng có thể dùng 1 số thủ thuật sau để chống copy bài viết và chặn các phím tắt đơn giản bằng jquery và css

Code chống chuột trái

<style type='text/css'>
body{
     -webkit-touch-callout: none;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     -o-user-select: none;
     user-select: none;
}
</style>

Code chống chuột phải

<script type='text/javascript'>
//<![CDATA[
// JavaScript Document
var message="NoRightClicking"; function defeatIE() {if (document.all) {(message);return false;}} function defeatNS(e) {if (document.layers||(document.getElementById&&!document.all)) { if (e.which==2||e.which==3) {(message);return false;}}} if (document.layers) {document.captureEvents(Event.MOUSEDOWN);document.onmousedown=defeatNS;} else{document.onmouseup=defeatNS;document.oncontextmenu=defeatIE;} document.oncontextmenu=new Function("return false")
//]]>
</script>

Code chống Ctrl + U, chống view-sourse, chống F12

Các bạn coppy code phía dưới dán vào trên thẻ đóng </head>
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js'/>
<script type='text/javascript'>
checkCtrl=false $('*').keydown(function(e){
if(e.keyCode=='17'){ checkCtrl=false  } }).keyup(function(ev){
if(ev.keyCode=='17'){ checkCtrl=false } }).keydown(function(event){
if(checkCtrl){
if(event.keyCode=='85'){ return false; } } })
</script>

Chống click chuột vào hình ảnh

Các bạn coppy code phía dưới dán vào trên thẻ đóng </body>
<script type='text/javascript'>
$('body').on('contextmenu', 'img', function(e){ return false; });
</script>

Code chặn phím tắt nhưng không chuyển hướng

<script type='text/javascript'>//<![CDATA[
checkCtrl = false;
$('*').keydown(function(e) {
    if (e.keyCode == '17') {
        checkCtrl = false
    }
}).keyup(function(ev) {
    if (ev.keyCode == '17') {
        checkCtrl = false
    }
}).keydown(function(event) {
    if (checkCtrl) {
        if (event.keyCode == '85') {
            return false;
        }
    }
})
//]]></script>
Cuối cùng thêm thuộc tính onkeydown="return false" cho thẻ body, ví dụ <body onkeydown="return false" ... >

Facebook: Dịch Vụ Mạng Xã Hội Đà Nẵng
Zalo: Dịch Vụ Đà Nẵng
Phone: 0333.110304
Gmail: mxhdn.xyz@gmail.com
Thanh toán: Ngân hàng, thẻ cào siêu rẻ, Momo, ViettelPay, card + 35% phí,...

Đăng nhận xét

Cookie Consent
Chúng tôi cung cấp cookie trên trang web này để phân tích lưu lượng truy cập, ghi nhớ tùy chọn của bạn và tối ưu hóa trải nghiệm của bạn.
Oops!
Có vẻ như đã xảy ra sự cố với kết nối internet của bạn. Vui lòng kết nối với internet và truy cập lại.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Refresh