allows you to see all posts/reels from those you follow, but disables scrolling into suggested videos
当前为
// ==UserScript==
// @name Stop Scrolling Instagram
// @namespace http://tampermonkey.net/
// @version 1.2
// @description allows you to see all posts/reels from those you follow, but disables scrolling into suggested videos
// @author Ulysses
// @match https://www.instagram.com/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=instagram.com
// @grant none
// @license MIT
// ==/UserScript==
(function () {
'use strict';
// Function to find "You've completely caught up" element
function findSuggested() {
const suggestedChild = document.querySelector('.xh8yej3.x1ye3gou.x1gan7if.xn6708d.x1miatn0.xdt5ytf.x78zum5.x9f619.xjbqb8w.x6s0dn4');
if (suggestedChild) {
const suggested = suggestedChild.parentElement;
stopAtElement(suggested);
} else {
enableScroll();
}
}
function disableScroll(suggested) {
// Set the margin before disabling scroll
suggested.style.marginBottom = '900px'; //
window.onscroll = function () {
const elementRect = suggested.getBoundingClientRect();
if (elementRect.bottom < window.innerHeight) {
const bodyRect = document.body.getBoundingClientRect();
window.scrollTo(0, elementRect.bottom - bodyRect.bottom);
}
};
}
function enableScroll() {
window.onscroll = function () { };
}
function stopAtElement(element) {
// Disable scrolling when the element is reached
disableScroll(element);
}
// Use MutationObserver to monitor DOM changes
const observer = new MutationObserver(findSuggested);
observer.observe(document.body, { childList: true, subtree: true });
findSuggested();
})();