Instagram: Arrow Keys on Multi-Image Posts

Makes right/left keys navigate next/previous images in multi-image posts, as well as to adjacent posts. Holding shift, right/left jumps directly between posts

目前為 2024-01-20 提交的版本,檢視 最新版本

  1. // ==UserScript==
  2. // @name Instagram: Arrow Keys on Multi-Image Posts
  3. // @description Makes right/left keys navigate next/previous images in multi-image posts, as well as to adjacent posts. Holding shift, right/left jumps directly between posts
  4. // @match https://www.instagram.com/*
  5. // @version 0.4
  6. // @author mica
  7. // @namespace greasyfork.org/users/12559
  8. // @license MIT
  9. // ==/UserScript==
  10.  
  11.  
  12. let nextImg = () => document.querySelector('article button[aria-label="Next"]');
  13. let prevImg = () => document.querySelector('article button[aria-label="Go back"]');
  14. let nextPost = () => document.querySelector('svg[aria-label="Next"]').closest('button').click();
  15. let prevPost = () => document.querySelector('svg[aria-label="Go back"]').closest('button').click();
  16. document.addEventListener('keydown', (event) => {
  17. event.stopPropagation();
  18. if (event.shiftKey && event.key === 'ArrowRight') {
  19. nextPost();
  20. } else if (event.key === 'ArrowRight') {
  21. if (nextImg()) {
  22. nextImg().click();
  23. } else {
  24. nextPost();
  25. }
  26. } else if (event.shiftKey && event.key === 'ArrowLeft') {
  27. prevPost();
  28. } else if (event.key === 'ArrowLeft') {
  29. if (prevImg()) {
  30. prevImg().click();
  31. } else {
  32. prevPost();
  33. }
  34. }
  35. }, true);