Kopieren, Markieren und Rechtsklick auf jeder Seite entsperren
Eine überraschende Anzahl von Seiten versucht immer noch, ihre Inhalte zu "schützen", indem sie Textauswahl, den Kopierbefehl und das Rechtsklick-Menü deaktivieren. Es hält selten jemand Entschlossenen auf, aber es ärgert ständig Menschen, die einfach nur ein Zitat oder eine Telefonnummer greifen wollen. Mit JustZix können Sie alles in Sekunden wieder einschalten.
Warum Seiten das Kopieren blockieren
Seiten deaktivieren Kopieren und Auswahl auf drei häufige Arten: eine CSS-Regel (user-select: none), JavaScript-Ereignis-Listener, die preventDefault() auf copy, selectstart und contextmenu aufrufen, und manchmal ein transparentes Overlay über dem Text. JustZix lässt Sie jede Schicht neutralisieren, weil Ihre Regel in der Seite läuft und Sie sowohl das CSS als auch das JS steuern.
Schritt 1: die Auswahl mit CSS wieder erzwingen
Erstellen Sie in JustZix eine CSS-Regel, die der Seite (oder * für alles) zugeordnet ist, und fügen Sie dies ein. Das !important-Flag überschreibt das eigene Stylesheet der Seite.
* {
-webkit-user-select: text !important;
-moz-user-select: text !important;
user-select: text !important;
cursor: auto !important;
}
Das allein behebt die Mehrheit der "Ich kann den Text nicht markieren"-Fälle. Wenn die Seite sich immer noch wehrt, kommt die Blockade stattdessen von JavaScript.
Schritt 2: die JavaScript-Handler stoppen
Fügen Sie eine JS-Regel für dieselbe URL hinzu. Der Trick ist, Ihre Listener in der Capture-Phase zu registrieren (das dritte Argument true), sodass sie vor den Handlern der Seite laufen, dann stopImmediatePropagation() aufzurufen, sodass der blockierende Code der Seite nie ausgelöst wird.
['copy', 'cut', 'paste', 'selectstart', 'contextmenu', 'mousedown'].forEach(function (type) {
document.addEventListener(type, function (e) {
e.stopImmediatePropagation();
}, true);
});
JustZix führt Ihr JS einmal pro Seitenladen aus, sodass es sich früh anhängt und das ganze Dokument abdeckt. Da Sie nur die Weiterleitung stoppen, funktioniert das Standardverhalten des Browsers (tatsächliches Kopieren, tatsächliches Anzeigen des Menüs) weiterhin.
Schritt 3: Inline-Handler entfernen
Manche Seiten setzen oncontextmenu="return false" direkt auf das <body>-Element. Capture-Phasen-Listener schlagen nicht immer Inline-Attribute, also wischen Sie auch diese weg. Dieses Snippet ist defensiv: Es prüft, ob das Element existiert, bevor es es berührt.
var targets = [document.body, document.documentElement];
targets.forEach(function (el) {
if (!el) return;
el.oncontextmenu = null;
el.oncopy = null;
el.onselectstart = null;
el.ondragstart = null;
});
Es zusammensetzen
Für eine hartnäckige Seite verwenden Sie alle drei: die CSS-Regel plus eine einzige JS-Regel, die die Schritte 2 und 3 kombiniert. Die kombinierte JS-Regel sieht so aus:
['copy', 'cut', 'paste', 'selectstart', 'contextmenu', 'mousedown', 'dragstart'].forEach(function (type) {
document.addEventListener(type, function (e) {
e.stopImmediatePropagation();
}, true);
});
var el = document.body;
if (el) {
el.oncontextmenu = null;
el.oncopy = null;
el.onselectstart = null;
}
Wenn der Text in einem Overlay liegt
Wenn Sie den Text sehen können, aber die Auswahl einen leeren Kasten greift, sitzt ein unsichtbares Element obendrauf. Finden Sie es in den DevTools und deaktivieren Sie Zeigerereignisse mit CSS:
.paywall-overlay,
.copy-guard,
[class*="overlay"] {
pointer-events: none !important;
}
Seien Sie konservativ mit breiten Selektoren wie [class*="overlay"] — sie können Schaltflächen deaktivieren, die Sie tatsächlich brauchen. Bevorzugen Sie den exakten Klassennamen, sobald Sie ihn identifiziert haben.
Tipps für zuverlässige Regeln
- Ordnen Sie die Regel so eng wie möglich zu. Ein seitenspezifisches Muster ist sicherer als
*. - Halten Sie die CSS-Regel und die JS-Regel getrennt, sodass Sie jede beim Testen unabhängig umschalten können.
- Wenn eine Seite Inhalte dynamisch lädt, funktionieren die Capture-Phasen-Listener trotzdem, weil sie auf
documentleben, nicht auf einzelnen Elementen. - Nichts hier sendet Daten irgendwohin — es ändert nur, wie sich Ereignisse in Ihrem eigenen Browser verhalten.
Durchstöbern Sie die fertigen Beispiele für eine Ein-Klick-Version dieser Regel, und falls Sie es noch nicht installiert haben, laden Sie JustZix herunter für Chrome, Firefox, Edge oder Opera. Sobald das Kopieren wieder funktioniert, möchten Sie vielleicht auch unseren Begleitbeitrag über das automatische Akzeptieren von Cookie-Bannern lesen.
Bewerte diesen Beitrag
Noch keine Bewertungen — sei der Erste.