Greasy Fork is available in English.

Scribd bypass

Script disables blur on text & add full document

  1. // ==UserScript==
  2. // @name Scribd bypass
  3. // @description Script disables blur on text & add full document
  4. // @author FLXXX
  5. // @version 1.2
  6. // @license MIT
  7. // @namespace https://greasyfork.org/ru/users/938036-flxxx
  8. // @match *://*.scribd.com/*
  9. // @icon https://s-f.scribdassets.com/favicon.ico
  10. // @require https://code.jquery.com/jquery-3.6.3.min.js
  11. // ==/UserScript==
  12. /* eslint-env jquery */
  13. $(document).ready(function () {
  14. 'use strict';
  15. function removePromoDivs() {
  16. const promoDivs = document.querySelectorAll('.promo_div');
  17. promoDivs.forEach(div => div.remove());
  18. }
  19. function removeUnselectable() {
  20. const unselectableElements = document.querySelectorAll('[unselectable="on"]');
  21. unselectableElements.forEach(el => el.removeAttribute('unselectable'));
  22. }
  23. function removeBlurredPage() {
  24. const blurredElements = document.querySelectorAll('.blurred_page');
  25. blurredElements.forEach(el => el.classList.remove('blurred_page'));
  26. }
  27. function cleanStylesAndAttributes() {
  28. const allElements = document.querySelectorAll('*');
  29. allElements.forEach(el => {
  30. if (el.style.color === 'transparent') {
  31. el.style.color = '';
  32. }
  33. if (el.style.textShadow) {
  34. el.style.textShadow = '';
  35. }
  36. el.removeAttribute('data-initial-color');
  37. el.removeAttribute('data-initial-text-shadow');
  38. });
  39. }
  40. window.addEventListener('load', () => {
  41. removePromoDivs();
  42. removeUnselectable();
  43. removeBlurredPage();
  44. cleanStylesAndAttributes();
  45. const observer = new MutationObserver(() => {
  46. removePromoDivs();
  47. removeUnselectable();
  48. removeBlurredPage();
  49. cleanStylesAndAttributes();
  50. });
  51. observer.observe(document.body, {
  52. childList: true,
  53. subtree: true
  54. });
  55. });
  56. });