Auto-Pause Redgifs

Auto-pauses videos from redgif on reddit

Tính đến 29-05-2024. Xem phiên bản mới nhất.

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

Bạn sẽ cần cài đặt một tiện ích mở rộng như Tampermonkey hoặc Violentmonkey để cài đặt kịch bản này.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(Tôi đã có Trình quản lý tập lệnh người dùng, hãy cài đặt nó!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

// ==UserScript==
// @name        Auto-Pause Redgifs
// @description Auto-pauses videos from redgif on reddit
// @namespace   redgifs.com
// @match       *://*redgifs.com/*
// @match       *redgifs.com/*
// @include     *redgifs.com/*
// @match       https://www.redgifs.com/*
// @grant       none
// @license     GPLv2
// @author      laclcia
// @version     1.13
// ==/UserScript==

(function() {
  'use strict';

  console.log('Script loaded on Redgifs page'); // Debug message

  const waitTime = 1000; // Wait time between attempts in milliseconds (1 second)
  const maxAttempts = 6; // Maximum number of attempts to find the video

  let videoPaused = false; // Flag to track if video is paused

  function findAndPauseVideo() {
    const video = document.querySelector('a.videoLink video[src]'); // Use previous selector

    if (video && !videoPaused) { // Check video and paused flag
      console.log('Video element found'); // Debug message
      video.pause();
      console.log('Paused Redgif video');
      videoPaused = true; // Set flag to true after pausing
    }

    console.log('Video not found (attempt ', arguments[0], ')'); // Debug message with attempt count
  }

  for (let i = 0; i < maxAttempts && !videoPaused; i++) { // Check videoPaused in loop condition
    setTimeout(findAndPauseVideo.bind(null, i + 1), waitTime * i); // Call with attempt count
  }
})();