Beispielcode zur Implementierung von Follow Ads mit JavaScript

Beispielcode zur Implementierung von Follow Ads mit JavaScript

Floating Ads sind eine sehr verbreitete Form der Werbung auf Websites. Floating Ads können das Surfverhalten des Benutzers in Echtzeit verfolgen, die Bedeutung des Produkts effektiv vermitteln und gute Kommunikationseffekte erzielen. Wie werden Floating-Anzeigen also implementiert? Tatsächlich ist es nicht schwierig, Floating-Anzeigen zu implementieren. Die Einzelheiten sind wie folgt:

        * {
            Rand: 0;
            Polsterung: 0;
        }
        
        img {
            Position: absolut;
            links: 0;
        }
        
        P {
            Textausrichtung: zentriert;
            Zeilenhöhe: 40px;
        }
    <img src="images/left_ad.png" alt="">
    <p>Ich bin der Haupttext 1</p>
    <p>Ich bin der Haupttext 2</p>
    <p>Ich bin der Haupttext 3</p>
    <p>Ich bin der Haupttext 4</p>
    <p>Ich bin der Haupttext 5</p>
    <p>Ich bin der Haupttext 6</p>
    <p>Ich bin der Haupttext 7</p>
    <p>Ich bin der Haupttext 8</p>
    <p>Ich bin der Haupttext 9</p>
    <p>Ich bin der Haupttext 10</p>
    <p>Ich bin der Haupttext 11</p>
    <p>Ich bin der Haupttext 12</p>
    <p>Ich bin der Haupttext 13</p>
    <p>Ich bin der Haupttext 14</p>
    <p>Ich bin der Haupttext 15</p>
    <p>Ich bin der Haupttext 16</p>
    <p>Ich bin der Haupttext 17</p>
    <p>Ich bin der Haupttext 18</p>
    <p>Ich bin der Haupttext 19</p>
    <p>Ich bin der Haupttext 20</p>
    <p>Ich bin der Haupttext 21</p>
    <p>Ich bin der Haupttext 22</p>
    <p>Ich bin der Haupttext 23</p>
    <p>Ich bin der Haupttext 24</p>
    <p>Ich bin der Haupttext 25</p>
    <p>Ich bin der Haupttext 26</p>
    <p>Ich bin der Haupttext 27</p>
    <p>Ich bin der Haupttext 28</p>
    <p>Ich bin der Haupttext 29</p>
    <p>Ich bin der Haupttext 30</p>
    <p>Ich bin Text 31</p>
    <p>Ich bin Text 32</p>
    <p>Ich bin der Text 33</p>
    <p>Ich bin der Haupttext 34</p>
    <p>Ich bin der Haupttext 35</p>
    <p>Ich bin Text 36</p>
    <p>Ich bin Text 37</p>
    <p>Ich bin Text 38</p>
    <p>Ich bin Text 39</p>
    <p>Ich bin Text 40</p>
    <p>Ich bin Text 41</p>
    <p>Ich bin Text 42</p>
    <p>Ich bin Text 43</p>
    <p>Ich bin Text 44</p>
    <p>Ich bin der Haupttext 45</p>
    <p>Ich bin Text 46</p>
    <p>Ich bin Text 47</p>
    <p>Ich bin Text 48</p>
    <p>Ich bin Text 49</p>
    <p>Ich bin Text 50</p>
        //1. Das zu bearbeitende Element abrufen const oAdImg = document.querySelector("img");
 
        //2. Berechnen Sie den oberen Wert des Anzeigenbildes = (Ansichtsfensterhöhe - Anzeigenhöhe)/2
        const screenHeight = getScreen().height;
        const imgHeight = oAdImg.offsetHeight;
        const offsetY = (Bildschirmhöhe – Bildhöhe) / 2;
        // Konsole.log(OffsetY);
 
        //3. Setzen Sie den berechneten oberen Wert auf das Anzeigenbild // oAdImg.style.top = offsetY + 'px';
        easeAnimation(oAdImg, {
            "oben": offsetY
        });
 
        //4. Achten Sie auf Scroll-Ereignisse auf der Webseite window.onscroll = function() {
            //Scrolldistanz der Webseite abrufen //Der Wert oben im Anzeigenbild + Scrolldistanz der Webseite let pageOffsetY = getPageScroll().y;
            easeAnimation(oAdImg, {
                "oben": offsetY + pageOffsetY
            });
        };
 
        // Breite und Höhe des Browser-Ansichtsfensters function getScreen() {
            lass Breite, Höhe;
            if (Fenster.innereBreite) {
                Breite = Fenster.Innenbreite;
                Höhe = Fenster.Innenhöhe;
            } sonst wenn (document.compatMode === "BackCompat") {
                Breite = Dokument.Body.Clientbreite;
                Höhe = Dokument.Body.ClientHöhe;
            } anders {
                Breite = Dokument.Dokumentelement.Clientbreite;
                Höhe = Dokument.Dokumentelement.Clienthöhe;
            }
            zurückkehren {
                Breite: Breite,
                Höhe: Höhe
            }
        }
 
        // Animation erleichtern Funktion easeAnimation(ele, obj, fn) {
            Intervall löschen(ele.timerId);
            ele.timerId = setzeIntervall(Funktion() {
                //Die Flag-Variable wird verwendet, um zu markieren, ob alle Eigenschaften die Animation abgeschlossen haben. let flag = true;
 
                für (let key in obj) {
                    let Ziel = Objekt[Schlüssel];
 
                    // 1. Aktuelle Position des Elements abrufen let style = getComputedStyle(ele);
                    lass beginne = parseInt(Stil[Schlüssel]) || 0;
 
                    // 2. Variable Datensatzschrittweite definieren // Formel: (Endposition - Startposition) * Beschleunigungskoeffizient (0 ~ 1)
                    sei Schritt = (Ziel – Beginn) * 0,3;
 
                    // 3. Berechnen Sie die neue Position begin += step;
                    wenn (Math.abs(Math.floor(Schritt)) > 1) {
                        Flagge = falsch;
                    } anders {
                        Beginn = Ziel;
                    }
                    // 4. Setzt die Position des Elements zurück ele.style[key] = begin + "px";
                }
 
                //Beurteilen, ob die Animation ausgeführt wurde, wenn (Flag) {
                    //Nachdem die Animation beendet ist, schalte den Timer aus clearInterval(ele.timerId);
 
                    //Beurteilen, ob die fn-Funktion übergeben wurde, und wenn ja, sie ausführen, andernfalls nicht ausführen fn && fn();
                }
            }, 100);
        }
 
        //Scrolldistanz der Webseite function getPageScroll() {
            sei x, y;
            wenn (Fenster.SeiteXOffset) {
                x = Fenster.SeiteXOffset;
                y = Fenster.SeitenYOffset;
            } sonst wenn (document.compatMode === "BackCompat") {
                x = Dokument.Body.ScrollLeft;
                y = Dokument.Body.ScrollTop;
            } anders {
                x = Dokument.Dokumentelement.ScrollLeft;
                y = Dokument.Dokumentelement.ScrollTop;
            }
            zurückkehren {
                x: x,
                j: j
            }
        }

Rendern

Damit ist dieser Artikel über Beispielcode zur Implementierung von Follow-up-Anzeigen mit JavaScript abgeschlossen. Weitere relevante Inhalte zu Follow-up-Anzeigen in JavaScript finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • JavaScript implementiert den folgenden Scrolling-Buffer-Motion-Advertising-Frame
  • js, um die folgende Mausbewegung zu erreichen und das Bildwerbebeispiel zu schließen
  • js schreibt die Maskenebene-Login-Box und Couplet-Werbung und folgt automatisch der Bildlaufleiste zum Scrollen

<<:  Detaillierte Erläuterung der Nginx-Prozessverwaltungs- und Neuladeprinzipien

>>:  MySQL-Joinpufferprinzip

Artikel empfehlen

Kopieren von Feldern zwischen verschiedenen Tabellen in MySQL

Manchmal müssen wir eine ganze Datenspalte aus ei...

VUE+Canvas realisiert den gesamten Prozess eines einfachen Gobang-Spiels

Vorwort In Bezug auf das Layout ist Gobang viel e...

Einführung in /etc/my.cnf-Parameter in MySQL 5.7

Nachfolgend finden Sie einige allgemeine Paramete...

Problem mit der Parameterübergabe beim Sprung auf HTML-Seite

Die Wirkung ist wie folgt: eine Seite Nach dem Kl...

Detailliertes Beispiel für die Verwendung einer asynchronen JS-Fetch-Anforderung

Inhaltsverzeichnis Asynchronität verstehen abrufe...

Anwendungsszenarien für React useMemo und useCallback

Inhaltsverzeichnis verwendenMemo useCallback verw...

Installations-Tutorial für die ZIP-Archivversion von MySQL 5.7

In diesem Artikel finden Sie das Installations-Tu...

Tutorial zur kostenlosen Konfiguration der MySQL 5.7.18-Installationsversion

Installations-Tutorial zur kostenlosen Installati...

So führen Sie ein Python-Skript auf Docker aus

Erstellen Sie zunächst ein spezielles Projektverz...

js verwendet FileReader zum Lesen lokaler Dateien oder Blobs

Inhaltsverzeichnis FileReader liest lokale Dateie...