Browser extension to unblock copying of web pages
It's simple. Open the options page and edit the patterns
property.
Examples:
{
"patterns": [
+ "https://example.com/*",
// Matches `https://example.com` and `https://example.com/path/to/file`
+ "*://example.com/path",
// Matches `http://example.com/path` and `https://example.com/path`
+ "https://*.example.com/"
// Matches `https://example.com` and `https://www.example.com/`
],
// Other options...
}
-
Force
user-select: auto
.Examples of what this will unblock:
<p style="user-select: none;">Hello</p>
-
Wrap
Event.prototype.preventDefault
byProxy
.Examples of what this will unblock:
<p>Hello</p> <script> document.querySelector('p').addEventListener('selectstart', (event) => { event.preventDefault(); }); // or document.querySelector('p').onselectstart = (event) => { event.preventDefault(); }; </script> <!-- or --> <p onselectstart="arguments[0].preventDefault();">Hello</p>
-
Wrap setters for all event handlers (e.g.,
onselectstart
) forNode
subtype prototypes andwindow
byProxy
.Examples of what this will unblock:
<p>Hello</p> <script> document.querySelector('p').onselectstart = () => { return false; }; </script>
-
Calls wrapped setters to inline event handlers when elements are added or attributes are changed.
Examples of what this will unblock:
<p onselectstart="return false;">Hello</p>
Type: string[]
Default: []
Match patterns for webpages to unblock copying.
Learn more about match patterns on mdn web docs or Chrome for Developers.
To activate it on a new page, the page must be reloaded.
Type: string[]
Default: src/default-storage/index.ts
Event types to unblock copying.
Changes to this option are reflected immediately on the page.
Type: string
Default: src/default-storage/style.css
CSS styles to be inserted.
Changes to this option are reflected immediately on the page.
type: 'USER' | 'AUTHOR'
Default: 'USER'
An origin type of css to be inserted.
Learn more about origin types.