frontendler
Goto Top

Script: Code umwandeln und einbinden in bestehenden

Hoi hoi,

ich habe ein kleines anliegen.

Aktuell habe ich einen Code, Problem ist, der eine ist mit Jquery und da ich kein programmier aß bin.
Bräuchte ich bitte Hilfe.

Aktuell is das mein Script
// ==UserScript==
// @name         Twitch String checker0
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Checks for given strings, if not found, reloads the page after a given amount of time.
// @author       Manipulate
// @match        https://www.twitch.tv/thewantedmovie2014
// @icon         https://www.google.com/s2/favicons?sz=64&domain=twitch.tv
// @grant        none
// ==/UserScript==

(function() {
    'use strict';  

    const timeToWait = 15; // in seconds
    const lookFor = ["LIVE", "5000"]; // Change this to find different strings  

    ready(checkForString);

    function checkForString() {
        for (let stringToSearch of lookFor) {
            if (document.body.innerHTML.search(stringToSearch) > 0) {
                alert("Found: " + stringToSearch); // stops the page for reloading  

                // do other cool stuff here

                return;
            }
        }
        console.log("String(s) not found, trying again in a few seconds");  
        setTimeout(() => checkForString(), timeToWait * 1000);
    }

    // gotten from stackoverflow
    function ready(fn) {
        if (typeof fn !== 'function') {  
            throw new Error('Argument passed to ready should be a function');  
        }

        if (document.readyState != 'loading') {  
            fn();
        } else if (document.addEventListener) {
            document.addEventListener('DOMContentLoaded', fn, {  
                once: true // A boolean value indicating that the listener should be invoked at most once after being added. If true, the listener would be automatically removed when invoked.
            });
        } else {
            document.attachEvent('onreadystatechange', function() {  
                if (document.readyState != 'loading')  
                    fn();
            });
        }
    }
})();

Zur Erläuterung:
Aktuell campt der eine Webseite ab und fragt dauerhaft ab ob der Channel "LIVE" oder "5000" gefunden hat.
Falls JA, gibt er einen Alert aus.
Nun möchte ich aber:

Wenn er "LIVE" oder "5000" gefunden hat,, aber auch nur dann, dass er NACH einem Delay von 15 Sekunden, den Tab einmal (1x) neu lädt.
In etwa so:
$(document).ready(function () {
      setTimeout(function () {
        history.go(0);
      }, 15000);
    });
Problem, das is Jquery und wie ich beide Codes nun zusammen bekomme, ist für mich gerade als nicht programmiere wie Hieroglyphen xD
Verstehen tue ich es, aber beim umschreiben bin ich aktuell ein dulli.
Da ich durch meine Arbeit derzeit auch nicht groß zum lernen komme, hoffe ich hier auf Hilfe.

Falls man zusätzlich noch den Alert durch eine Chrome Desktop Benachrichtigung ändern könnte, wäre ich sehr dankbar.
Aber erstmal ist das zweitrangig.

Vielen Dank

Content-ID: 4757297764

Url: https://administrator.de/contentid/4757297764

Ausgedruckt am: 24.11.2024 um 09:11 Uhr