Switch JavaDoc version

Switch between JavaDoc versions since Java 7

  1. // ==UserScript==
  2. // @name Switch JavaDoc version
  3. // @namespace https://franklinyu.github.io
  4. // @version 0.1
  5. // @description Switch between JavaDoc versions since Java 7
  6. // @match https://docs.oracle.com/javase/*/docs/api/*
  7. // ==/UserScript==
  8.  
  9. const match = location.pathname.match('/javase/(\\d+)/docs/api/(.*)')
  10.  
  11. const select = document.createElement('select')
  12. select.style.float = 'right'
  13. select.addEventListener('change', e => {
  14. location = `/javase/${e.target.value}/docs/api/${match[2]}`
  15. })
  16.  
  17. for (const version of ['7', '8', '9', '10']) {
  18. const option = document.createElement('option')
  19. option.innerText = version
  20. if (version === match[1])
  21. option.selected = true
  22. select.append(option)
  23. }
  24.  
  25. const navbar = document.getElementsByClassName('topNav')[0]
  26. navbar && navbar.append(select)