9

At the last 6-7 seconds of each video, Facebook has a popup in the bottom right corner of the video that will play next.

It's very annoying, since it hides part of the video (especially if there are subtitles), and it takes the attention to that new popup.

I can press cancel, but mostly it will just suggest another video and then another one - where usually I'll arrive to one that can't be canceled, which automatically start a new video.

Is there anyway to disable those? I'm not interested in the next video, and certainly not in a popup that hides the current video in favor of the next one.

Example:

enter image description here

1
  • 1
    Downvoter - may explain why? – arieljannai Jul 4 '18 at 6:27
10

I wrote a user script that does that!

Available on my GitHub, on Greasy Fork and OpenUserJS, under the MIT license.

What it does

  • It checks if it's on a video page (URL contains /videos/) and if so:
    • It checks every half a second if the popup appeared, and if so - removes it.
    • It also cancels the next video from playing automatically.

The code snippet

It's recommended to use one of the links I mentioned above, linking to a .user.js file, since it will allow your user script manager[1] to update the script when such update is available.

[1] I'm using Tampermonkey and so it was created and tested with it, other user script managers might also work.

'use strict';

var videoPageIntervalID = 0;
var waitingForPopup = false;
var currLocation = '';

(function() {
    videoPageIntervalID = window.setInterval(onVideoPage, 1000);
})();

function waitForUpNextToDisaply() {
    var selector = $("div:contains('UP NEXT')").eq(-8)
    if(selector.length === 1) {
        // remove the popup and cancel the play next
        selector.remove();
        console.log('popup removed!');
        waitingForPopup = false;
        return;
    }
    else {
        setTimeout(function() {
            // console.log('waiting..');
            waitingForPopup = true;
            if (location.href.indexOf("/videos/") != -1) {
                waitForUpNextToDisaply();
            } else {
                waitingForPopup = false;
            }
        }, 500);
    }
}

function onVideoPage() {
    if (location.href.indexOf("/videos/") != -1 && !waitingForPopup && location.href != currLocation ) {
        console.log('arrived to video page: ', location.href);
        currLocation = location.href;
        waitForUpNextToDisaply();
    }
}

Customizing

If you want to remove the popup but still play the next video automatically, replace the 8 in $("div:contains('UP NEXT')").eq(-8) with 10 - it will remove the whole popup object, not only the visible part and so since it doesn't exist at all, Facebook will play the next video automatically.

4
  • Is there a modification on this to prevent it from jumping to the next video? – Mike Lee Apr 17 '20 at 22:17
  • I modified it myself, just replace selector.remove() with $("span:contains('Cancel')").click(); – Mike Lee Apr 17 '20 at 22:49
  • The above fix stopped working for some reason, I have added a new answer below. – Mike Lee Jul 25 '20 at 18:50
  • @MikeLee thanks for updating - I guess it's due to facebook interface changes, in the past it also prevented it from jumping to the next video – arieljannai Oct 4 '20 at 8:42
2

After searching the web for few hours, apparently there is no current way to disable that feature.

There are some question threads on Facebook's help community that are a few months old, as like the one in the link and none of them got answered by Facebook yet.

How can I turn off the "up next" video feature?

1
2

With the browser extension: uBlock Origin (Chrome version / Firefox version), AdBlock Plus, or a similar content-blocking browser extension that can use AdBlock Plus syntax filter lists, you can add the following custom filter:

||facebook.com/video/*/upnext/$xmlhttprequest

That should block the "up-next" video autoplay and pop-up.

1

I had been using arieljannai's solution for a while until it didn't work anymore. I've cooked up a shorter tampermonkey script based off his. This currently works for me.

// ==UserScript==
// @name         Facebook UP NEXT Video killer
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://www.facebook.com/
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    window.setInterval(function() {
        var button = Array.from(document.querySelectorAll('span')).find(el => el.textContent === 'Cancel');
        if(button) { button.click(); }
    }, 500);
})();
0

Was having the same issue with Facebook, with inappropriate videos showing up on the right side of the screen, during my 4 year old's remote learning sessions when watching educational videos shared by teachers. So I came up with this fix which works for me.

To remove/block the UP/NEXT video section, do the following:

Install Chrome extension “AdBlock” if you do not have it installed, and then go to AdBlock’s Setting/Option’s “Customize AdBlock” section and click "Edit" under “Manually edit your filters”, add the following code, save, DONE. Now refresh the video page, and the UP NEXT video section is now blocked/hidden.

www.facebook.com##DIV[class="q5bimw55 rpm2j7zs k7i0oixp gvuykj2m j83agx80 cbu4d94t ni8dbmo4 eg9m0zos pmk7jnqg du4w35lb ofs802cu pohlnb88 dkue75c7 mb9wzai9 rj1gh0hx buofh1pr g5gj957u tgvbjcpo l56l04vs r57mb794 kh7kg01d c3g1iek1 k4xni2cv discj3wi hv4rvrfc ihqw7lf3 dati1w0a lz6nqys8 n7fi1qx3 j9ispegn kr520xx4"]

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.