// 完整反调试+F12直接闪退脚本(版权保护专用)
(function() {
// ================================== 1. 核心新增:按下F12直接闪退(关闭标签页)
document.addEventListener('keydown', function(e) {
// 检测F12按键(keyCode=123)
if (e.keyCode === 123) {
e.preventDefault(); // 拦截F12默认打开调试工具的行为
e.stopPropagation();
// 尝试直接关闭当前标签页(模拟闪退)
try {
window.close(); // 核心:关闭标签页(部分浏览器因安全限制可能失效)
} catch (err) {
// 兜底方案:若无法关闭,强制刷新+清空页面(等效闪退体验)
document.body.innerHTML = ""; // 清空页面内容
location.reload(true); // 强制刷新(跳过缓存)
}
// 双重保障:就算关闭/清空失败,弹出警告并跳转空白页
setTimeout(() => {
alert("禁止使用F12调试!页面即将关闭!");
window.location.href = "about:blank"; // 跳转到空白页,彻底阻断操作
}, 100);
}
// 保留原有:屏蔽其他调试快捷键(Ctrl+Shift+I/J/U)
if (
(e.ctrlKey && e.shiftKey && (e.keyCode === 73 || e.keyCode === 74)) || // Ctrl+Shift+I/J
(e.ctrlKey && e.keyCode === 85) // Ctrl+U(查看源代码)
) {
e.preventDefault();
e.stopPropagation();
alert("禁止使用调试快捷键!");
window.location.href = "about:blank"; // 其他调试快捷键直接跳空白页
}
}, true); // 优先拦截事件,防止被绕过
// ================================== 2. 禁用右键菜单(阻止「右键→检查」打开调试)
document.addEventListener('contextmenu', function(e) {
e.preventDefault();
e.stopPropagation();
alert("右键菜单已禁用,请勿非法调试!");
}, true);
// ================================== 3. 预留「死机代码」(注释未执行,终极防护)
// var total = "";
// for (var i = 0; i < 1000000; i++) {
// total = total + i.toString();
// history.pushState(0, 0, total);
// }
// ================================== 4. 预留「强制跳转代码」(注释未执行)
// location.href = "http://www.44y4.com";
// ================================== 5. 进阶反调试:检测调试工具打开(尺寸变化)
var originWidth = window.innerWidth;
var originHeight = window.innerHeight;
setInterval(function() {
if (
Math.abs(window.innerWidth - originWidth) > 100 ||
Math.abs(window.innerHeight - originHeight) > 100
) {
alert("检测到调试工具!页面即将关闭!");
window.close(); // 检测到调试工具也触发闪退
setTimeout(() => {
window.location.href = "about:blank";
}, 100);
}
}, 500);
// ================================== 6. 页面提示:警告信息
if (window.xyplay && typeof xyplay.echo === 'function') {
xyplay.echo("
检测到非法调试,请关闭后刷新重试!");
} else {
document.write("
检测到非法调试,请关闭后刷新重试!");
}
// ================================== 7. 调试窗口干扰:无限断点+引导付费
var debugInterval = setInterval(function() {
debugger;
console.log('请勿非法调试,购买请联系QQ:1909824');
console.warn('非法调试可能导致页面功能异常,支持正版请联系QQ:1909824');
}, 1000);
// ================================== 8. 页面卸载前清理(优化性能)
window.addEventListener('beforeunload', function() {
clearInterval(debugInterval);
});
})();