PROJECT
OVERVIEW
Deployed complex JavaScript Debugger Traps and dynamic DOM obfuscation to effectively resist automated scrapers.
Deployed complex JavaScript Debugger Traps and dynamic DOM obfuscation to effectively resist automated scrapers.
// ==========================================
// 🛡️ 前端安全防护模块 (脱敏版)
// ==========================================
// 1. 禁止右键菜单与常用开发者快捷键
document.addEventListener('contextmenu', e => e.preventDefault());
document.onkeydown = function (e) {
if (e.keyCode == 123 || (e.ctrlKey && e.shiftKey) || (e.ctrlKey && e.keyCode == 85)) {
return false;
}
};
// 2. 调试器陷阱 (防扒站)
(function () {
setInterval(function () {
var start = new Date();
debugger; // 陷阱:打开控制台会导致页面卡死
var end = new Date();
if (end - start > 100) {
document.body.innerHTML = '<h1>⚠️ 非法调试 / Access Denied</h1>';
}
}, 1000);
})();
// 3. 禁止被 iframe 嵌套 (防止点击劫持)
if (window.top !== window.self) {
window.top.location = window.self.location;
}
// 4. 图片隐身还原脚本 (防简单爬虫)
document.addEventListener("DOMContentLoaded", function() {
var sensitiveImgs = document.querySelectorAll('img[data-src]');
sensitiveImgs.forEach(function(img) {
img.src = img.getAttribute('data-src');
img.removeAttribute('data-src'); // 销毁证据
});
});
// 5. 动态邮箱混淆 (防垃圾邮件扫描)
document.addEventListener("DOMContentLoaded", function() {
const p1 = "contact", p2 = "yourdomain", p3 = "com";
const container = document.getElementById('contact-email-placeholder');
if (container) {
const mailLink = document.createElement('a');
mailLink.href = `mailto:${p1}@${p2}.${p3}`;
mailLink.innerText = `${p1}@${p2}.${p3}`;
container.appendChild(mailLink);
}
});