Starting today I am going to collect a list of tricks that websites use to prevent you from copy and pasting text + how to circumvent them. In general, using ublock origin and allow right click properly fixes most issues.
Note: Spotify does have a legit reason to use draggable. You can drag albums or tracks to your library, but I personally prefer having texts to be selectable.
solution: use remove-attr in ublock origin—open.spotify.com##.encore-internal-color-text-base.encore-text-headline-large.encore-text:upward(1):remove-attr(draggable)
solution: locate the function using the browser debugger/ctrl+f, then do some ublock origin javascript filter stuff that I don’t really understand. Seems to just be overriding functions and EventListeners. The Annoyances filters worked in this case.
Starting today I am going to collect a list of tricks that websites use to prevent you from copy and pasting text + how to circumvent them. In general, using ublock origin and allow right click properly fixes most issues.
1. Using href (https://lnk.to/LACA-15863s, archive)
behavior: https://streamable.com/sxeblz
solution: use remove-attr in ublock origin -
lnk.to##.header__link:remove-attr(href)
2. Using a background image to cover the text (https://varium.jp/talent/ahiru/, archive)
Note: this example is probably just incompetence.
behavior: https://streamable.com/bw2wlv
solution: block the image with ublock origin
3. Using draggable=true (Spotify album titles, archive)
Note: Spotify does have a legit reason to use draggable. You can drag albums or tracks to your library, but I personally prefer having texts to be selectable.
behavior: https://streamable.com/cm0t6b
solution: use remove-attr in ublock origin—
open.spotify.com##.encore-internal-color-text-base.encore-text-headline-large.encore-text:upward(1):remove-attr(draggable)
4. Using
EventListener
s to nullify selections (https://www.uta-net.com/song/2765/, archive)behavior: https://streamable.com/2i1e9k
solution: locate the function using the browser debugger/ctrl+f, then do some ublock origin javascript filter stuff that I don’t really understand. Seems to just be overriding functions and EventListeners. The Annoyances filters worked in this case.