Enhanced Overdrive Library Switcher

Don't lose your place when switching between partner libraries on Overdrive.

  1. // ==UserScript==
  2. // @name Enhanced Overdrive Library Switcher
  3. // @namespace club.porcupine.gm_scripts.enhanced_overdrive_library_switcher
  4. // @version 4
  5. // @description Don't lose your place when switching between partner libraries on Overdrive.
  6. // @author Sam Birch
  7. // @license MIT
  8. // @icon https://icons.duckduckgo.com/ip2/bpl.overdrive.com.ico
  9. // @match https://*.overdrive.com/*
  10. // @grant none
  11. // ==/UserScript==
  12. // jshint esversion: 6
  13. // jshint asi: true
  14. (function() {
  15. 'use strict'
  16.  
  17. const pathSuffix = document.location.pathname.replace(new RegExp('^/.*?/content'), '')
  18. document.querySelectorAll('A.partnerLibraryLink').forEach(el => {
  19. el.pathname += pathSuffix
  20. el.search = document.location.search
  21. el.removeAttribute('target')
  22. })
  23. document.querySelector('#rla-dropdown').setAttribute('aria-autoclose', 'false')
  24. }())