Загрузка данных
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Тест защиты контента - Дилан</title>
<style>
/* Базовые стили страницы */
body {
font-family: 'Helvetica Neue', Arial, sans-serif;
padding: 40px;
line-height: 1.6;
color: #333;
max-width: 800px;
margin: 0 auto;
/* ЗАЩИТА 1: Запрет выделения текста на уровне CSS */
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.warning-box {
background-color: #fff3cd;
border: 1px solid #ffeeba;
color: #856404;
padding: 15px;
border-radius: 8px;
margin-bottom: 30px;
}
.protected-image {
max-width: 100%;
height: auto;
border-radius: 8px;
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
margin: 20px 0;
/* ЗАЩИТА 2: Дополнительный запрет взаимодействия с изображением */
pointer-events: none;
}
/* Анимация для уведомлений */
@keyframes slideIn {
from { transform: translateX(100%); opacity: 0; }
to { transform: translateX(0); opacity: 1; }
}
</style>
</head>
<body>
<div class="warning-box">
<strong>⚠️ Внимание!</strong> Эта страница демонстрирует методы защиты контента. Попробуйте выделить текст, нажать правую кнопку мыши, перетащить картинку или использовать Ctrl+C / Ctrl+U.
</div>
<h1>Уникальный авторский контент</h1>
<p>Это тестовый абзац с уникальным текстом, который мы пытаемся защитить от несанкционированного копирования. Попробуйте выделить этот текст мышкой или скопировать его через Ctrl+C. У вас ничего не получится!</p>
<!-- ЗАЩИТА 3: Атрибут draggable="false" запрещает перетаскивание -->
<img src="https://www.terem-pro.ru/upload/iblock/5c2/5c28a96205d8843c11ece789d5f50c9e.jpg"
alt="Дом Теремъ"
class="protected-image"
draggable="false">
<p><em>Попробуйте перетащить это изображение на рабочий стол или сохранить его через правый клик.</em></p>
<script>
// ЗАЩИТА 4: Блокировка правого клика (контекстного меню)
document.addEventListener('contextmenu', function(e) {
e.preventDefault();
showNotification('Правый клик и контекстное меню заблокированы!');
});
// ЗАЩИТА 5: Блокировка горячих клавиш (Ctrl+C, Ctrl+U, Ctrl+A, F12)
document.addEventListener('keydown', function(e) {
// Блокируем Ctrl+C, Ctrl+U, Ctrl+A, Ctrl+S
if (e.ctrlKey && (e.key === 'c' || e.key === 'u' || e.key === 'a' || e.key === 's')) {
e.preventDefault();
showNotification('Копирование и просмотр кода заблокированы!');
}
// Блокируем F12 и Ctrl+Shift+I (инструменты разработчика)
if (e.key === 'F12' || (e.ctrlKey && e.shiftKey && e.key === 'I')) {
e.preventDefault();
showNotification('Инструменты разработчика заблокированы!');
}
});
// ЗАЩИТА 6: Дополнительная программная блокировка перетаскивания (на случай, если атрибут проигнорирован)
document.querySelectorAll('img').forEach(function(img) {
img.addEventListener('dragstart', function(e) {
e.preventDefault();
});
});
// Функция для показа красивого ненавязчивого уведомления (вместо раздражающего alert)
function showNotification(message) {
// Удаляем предыдущие уведомления, чтобы они не наслаивались
const existing = document.querySelector('.protection-toast');
if (existing) existing.remove();
const notif = document.createElement('div');
notif.className = 'protection-toast';
notif.textContent = message;
notif.style.cssText = `
position: fixed;
bottom: 30px;
right: 30px;
background-color: #dc3545;
color: white;
padding: 14px 24px;
border-radius: 8px;
font-size: 15px;
font-weight: 500;
box-shadow: 0 8px 16px rgba(0,0,0,0.2);
z-index: 10000;
animation: slideIn 0.3s ease;
`;
document.body.appendChild(notif);
// Автоматическое скрытие через 2.5 секунды
setTimeout(() => {
notif.style.opacity = '0';
notif.style.transition = 'opacity 0.3s ease';
setTimeout(() => notif.remove(), 300);
}, 2500);
}
</script>
</body>
</html>