Tình trạng sao chép nội dung của nhau trên internet rất phổ biến. Nếu bạn nào muốn hạn chế sao chép thì có thể áp dụng theo bài này. Bạn sẽ không thể chống sao chép nội dung hoàn toàn, đối với người biết cách thì họ vẫn làm bình thường.
Để chống sao chép thì trước hết bạn phải biết sao chép. Thường thì cái này ai cũng biết cả rồi. Khi bạn muốn copy bất kỳ nội dung nào thì bạn bôi đen, sau đó nhấn Ctrl + C. Hoặc bạn copy bằng cách nhấn chuột phải và chọn Copy.
Chống sao chép nội dung trên trang web
Với nguyên lý sao chép như vậy, giờ bạn muốn chống sao chép thì bạn hạn chế không cho bôi đen hoặc không cho click chuột phải. Bài viết hướng dẫn chống sao chép này mình dựa trên Javascript nhé.
Bạn sao chép đoạn code bên dưới và bỏ vào thẻ script. Sau đó bạn chèn vào giữa thẻ head hoặc trước khi kết thúc thẻ body của trang web.
(function () { window.onload = function () { document.addEventListener("contextmenu", function (e) { e.preventDefault(); }, false); document.addEventListener("keydown", function (e) { // "I" key if (e.ctrlKey && e.shiftKey && e.keyCode === 73) { disabledEvent(e); } // "J" key if (e.ctrlKey && e.shiftKey && e.keyCode === 74) { disabledEvent(e); } // "S" key + macOS if (e.keyCode === 83 && (navigator.platform.match("Mac") ? e.metaKey : e.ctrlKey)) { disabledEvent(e); } // "U" key if (e.ctrlKey && e.keyCode === 85) { disabledEvent(e); } // "C" key if (e.ctrlKey && e.keyCode === 67) { disabledEvent(e); } // "F12" key if (event.keyCode === 123) { disabledEvent(e); } }, false); function disabledEvent(e) { if (e.stopPropagation) { e.stopPropagation(); } else if (window.event) { window.event.cancelBubble = true; } e.preventDefault(); return false; } }; })();
Đoạn code bên trên sẽ không cho phép người dùng nhấn các tổ hợp phím Ctrl + Shift + I
, Ctrl + Shift + J
, Ctrl + S
, Ctrl + U
, Ctrl + C
và phím F12
.
Ngoài ra, khi người dùng click chuột phải thì sẽ không hiển thị menu công cụ của trình duyệt. Nếu bạn nào đang dùng jQuery thì có thể áp dụng hàm bên dưới:
jQuery(document).bind("contextmenu cut copy paste",function(e){ e.preventDefault(); });
Chống bôi đen văn bản bằng CSS
Nếu người dùng muốn sao chép hoặc cắt bất kỳ đoạn văn bản nào thì phải bôi đen đoạn đó trước. Sau khi bôi đen thì nhấn Ctrl + C
hoặc Ctrl + X
để sao chép. Công việc của bạn là không cho người dùng bôi đen thì sẽ không sao chép hoặc cắt được.
html, body { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
Như vậy, qua bài viết này thì bạn đã phần nào hạn chế người khác sao chép nội dung trên trang web của bạn. Bài viết chống sao chép nội dung này chỉ mang tính tương đối. Nếu người dùng có chuyên môn, biết cách thì họ vẫn sao chép được như thường. Internet là hoàn toàn miễn phí, những gì bạn chia sẻ lên mạng thì mọi người đều nhìn thấy được. Trừ khi bạn không cho người khác thấy thì họ mới không thể sao chép nội dung của bạn. Ngược lại, một khi nội dung hiển thị công cộng cho mọi người thì ai cũng có thể tải được.
Xem thêm: Hướng dẫn chèn CSS và Javascript vào WordPress
Đối với WordPress thì bạn nên chèn CSS và Javascript cho đúng chuẩn. Có thể dùng plugin hoặc thông qua hook đặt vào tập tin functions.php của giao diện. Chúc bạn thành công.
phải sử dụng cái này luôn
Cái này chỉ hạn chế những người không biết thôi bạn, chứ cấm kiểu nào cũng sao chép được hết.
mấy bài mất công viết thấy nó copy về lên top vèo vèo.. chán thật..mình thì cứ nằm ở đáy
Nếu bài viết là của bạn tự soạn, hãy dùng DMCA để bảo vệ nội dung bản quyền: http://www.dmca.com/
Mình có đăng kí rồi bạn
admin cho e hỏi e muốn thêm cả cấm Ctr+P nữa thì làm ntn, em cảm ơn ạ
keyCode của phím P là 80 nha bạn.