Skip to main content

如何解除网站的复制粘贴限制

// 1. 解除右键禁用
document.oncontextmenu = null;

// 2. 解除选择文本禁用
document.onselectstart = null;

// 3. 解除复制禁用
document.oncopy = null;

// 4. 解除粘贴禁用
document.onpaste = null;

// 5. 解除所有事件监听器(如 addEventListener 设置的)
const all = document.querySelectorAll('*');
all.forEach(el => {
el.oncopy = null;
el.onpaste = null;
el.oncut = null;
el.onselectstart = null;
el.oncontextmenu = null;
});

// 6. 移除 body 上通过事件捕获的监听器(如网站使用 addEventListener 添加的)
const bodyClone = document.body.cloneNode(true);
document.body.parentNode.replaceChild(bodyClone, document.body);

// 某些网站使用了 CSS 层面的禁止(例如 user-select: none;),可以通过添加样式解决
const style = document.createElement('style');
style.innerHTML = '* { user-select: text !important; }';
document.head.appendChild(style);

// 如果网站用了框架(如 React/Vue)并动态绑定事件,还可能需要定时清除。可用:

setInterval(() => {
document.oncontextmenu = null;
document.onselectstart = null;
document.oncopy = null;
document.onpaste = null;
}, 1000);