Archiv der Kategorie: Ohne Schublade

Automatisches endloses Runterscrollen im Browser

Hier am Beispiel des Chrome-Browsers

  • Öffne mit der F12-Taste die Entwicklertools
  • In der Console gib man folgenden Javascript-Code ein (Quelle) und führt ihn mit der Enter-Taste aus:
(function() {
    var intervalObj = null;
    var retry = 0;
    var clickHandler = function() { 
        console.log("Clicked; stopping autoscroll");
        clearInterval(intervalObj);
        document.body.removeEventListener("click", clickHandler);
    }
    function scrollDown() { 
        var scrollHeight = document.body.scrollHeight,
            scrollTop = document.body.scrollTop,
            innerHeight = window.innerHeight,
            difference = (scrollHeight - scrollTop) - innerHeight

        if (difference > 0) { 
            window.scrollBy(0, difference);
            if (retry > 0) { 
                retry = 0;
            }
            console.log("scrolling down more");
        } else {
            if (retry >= 3) {
                console.log("reached bottom of page; stopping");
                clearInterval(intervalObj);
                document.body.removeEventListener("click", clickHandler);
            } else {
                console.log("[apparenty] hit bottom of page; retrying: " + (retry + 1));
                retry++;
            }
        }
    }

    document.body.addEventListener("click", clickHandler);

    intervalObj = setInterval(scrollDown, 1000);

})()
  • Achtung: Öffnet man im gleichen Browserfenster einen neuen Tab oder minimiert man das Browser-Fenster, hört Chrome auf, das JavaScript auszuführen.
  • Will man also in der Zwischenzeit im Browser weiterarbeiten, muss man daher hierfür ein neues Browserfenster öffnen.

Sobald man am Ende der Seite angekommen ist, stoppt man das Skript (das sonst eben unendlich weiterläuft und sekündlich bis zum Seitenende runterscrollen würde), indem man einfach einmal in den Browser klickt.

Hinweis: funktioniert im Chrome auf Windows und Apple (getestet im August 2021)

Einsatz: Zum Beispiel, um bei LinkedIn die Gruppenmitglieder alle anzuzeigen.

Google Analtics Ergebnisse fraglich

Artikel von 20.8.2018: 

  • I’ve found over 78% of real site visitors are not being tracked [by Google Analytics].
  • I’ve even seen Google Analytics report the opposite trend to reality. Analytics data is now too unreliable for any trend analyses.
  • Many ad blockers – whose purpose is to hide adverts on the websites you visit – also block tracking and analytics services, including Google Analytics.
  • Firefox even includes a tracking protection option without the need for any extensions.
  • Network administrators can also filter out traffic.

Besserer Ansatz: Logfile-basierte Webanalyse

Einschränkung: Hoster werfen die Access-Logs nach einer Weile weg, z.B. HostEurope nach 2 Wochen.

Three.JS: Volumen Zwischen ZWei Ebenen unterschiedlich farbig markieren

Ausgangspunkt der Aufgabe sind zwei Landschaften, die übereinandergelegt werden. Liegt ein Abschnitt von Landschaft 1 über dem der Landschaft 2, wird dieser Abschnitt violett gefärbt. Liegt ein Abschnitt der Landschaft 2 über dem der Landschaft 1, wird er hellblau eingefärbt. 

Technisch handelt es sich um einen direkten Vergleich der Lage von zwei übereinanderliegenden Dreiecken (Quelle). Regelfall ist, dass ein Dreieck vollständig über dem Vergleichsdreieck liegt – dann wird es entsprechend gefärbt. Sonderfall ist, dass sich beide Dreiecke in einer Schnittkurve schneiden -> deren Färbung muss gesondert betrachtet werden.

Randbemerkung: Es müssen nicht wirklich die Volumen farbig gefüllt werden. Natürlich genügt es, tatsächlich nur deren Haut/Oberfläche farbig zu markieren, um die Illusion der Volumenfärbung herbeizuführen.