Beispielcode zur Implementierung einer schwebenden Seitenbox basierend auf JS

Beispielcode zur Implementierung einer schwebenden Seitenbox basierend auf JS

Wenn die Bildlaufleiste nach unten gezogen wird, bleibt die schwebende Box an derselben Position, hauptsächlich aufgrund position:fixed; .

Wenn Sie ein Stück nach unten scrollen und sich der Fußzeile nähern, steuere ich mit js, dass das Div verschwindet, und es wird wieder angezeigt, wenn Sie nach oben scrollen.

<!DOCTYPE html> 
<html> 
<Kopf>
<Titel></Titel>
<style type="text/css">
.div1 {
    Höhe: 2000px;
}
.div2 {
    Breite: 100 %;
    Höhe: 35px;
    Hintergrundfarbe: #3399FF;
    Rand oben: 100px;
}
.div2_1{
    Position: fest;
    Breite: 100 %;
    Höhe: 35px;
    z-Index:999;
    Hintergrundfarbe: #3399FF;
    oben: 0px;
    _position:absolut;
    _bottom:auto;
    _top:Ausdruck(eval(Dokument.documentElement.scrollTop));
}
 .div2_2
    {
        Anzeige: keine;
    }

 
</Stil>
<Skripttyp="text/javascript">
Fenster.Onscroll=Funktion(){ 
    var t=document.documentElement.scrollTop||document.body.scrollTop;  
    var div2 = document.getElementById("div2"); 
    wenn(t>= 100){ 
        div2.Klassenname = "div2_1";
    }anders{
        div2.Klassenname = "div2";
    } 
}
</Skript>
</Kopf>
<Text>
<div Klasse="div1">
    <div id="div2" class="div2"></div>
</div>
</body>
</html>

Ergänzung: JavaScript zur Implementierung der Floating-Box rechts

HTML Quelltext:

<Text>
  <div id="div1">
  </div>
</body>

CSS Code:

#div1{
    Höhe: 150px;
    Breite: 100px;
    Hintergrund: rot;    
    Position: absolut;
    rechts: 0px;
    unten: 0px;
}
Körper{
    Höhe: 2000px;
}

JavaScript-Code

//Wenn das Formular scrollt window.onscroll=function (){
      var obj = document.getElementById("div1");
      // Berücksichtigung der Browserkompatibilität (Scrollhöhe)
      var scrollTop=document.documentElement.scrollTop || document.body.scrollTop;
                    //Die Höhe des sichtbaren Bereichs des Browsers + die eigene Höhe des Objekts + die gewellte Höhe // obj.style.top = document.documentElement.clientHeight-obj.offsetHeight+scrollTop+'px';
    //var targetLen=document.documentElement.clientHeight-obj.offsetHeight+scrollTop;
    //verschieben(Ziellänge);
    //Auf diese Weise haben wir den Grundcharakter fertiggestellt. //Methode 2: Das Ergebnis ist, dass er zittern wird. //var targetLen=(document.documentElement.clientHeight)/2-obj.offsetHeight+scrollTop;
    //verschieben(Ziellänge);
    var targetLen = parseInt((document.documentElement.clientHeight)/2-obj.offsetHeight+scrollTop);
    verschieben(Ziellänge);
    //Damit sind unsere Grundfunktionen realisiert.}
  //Hier fügen wir eine Pufferbewegung hinzu, damit wir diese Dinge bequem tun können. var Timer = null;
  Funktion verschieben(iTarget){
      clearInterval(Timer); //Zuerst löschen var obj=document.getElementById("div1");
      Timer=setInterval(function (){ //Die Entfernung vom Objekt oben var speed=(iTarget-obj.offsetTop)/4;
           Geschwindigkeit=Geschwindigkeit>0?Math.ceil(Geschwindigkeit):Math.floor(Geschwindigkeit);
           //Ermitteln Sie zuerst unsere Geschwindigkeit if(obj.offsetTop==iTarget){
               clearInterval(timer); //Nachdem wir das Ziel erreicht haben, löschen wir das Element}else{
               obj.style.top=obj.offsetTop+Geschwindigkeit+'px';
           }
      },30)
      //Lass uns unsere Pufferübung machen}

Damit ist dieser Artikel über den Beispielcode zur Implementierung einer schwebenden Seitenbox auf JS-Basis abgeschlossen. Weitere relevante Inhalte zu schwebenden Seitenboxen auf JS-Basis finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • js, um den Effekt eines Mausaufhängungsrahmens zu erzielen
  • js-Text überschreitet die Länge und wird durch Auslassungspunkte ersetzt. Beim Bewegen der Maus wird ein Beispiel in einer schwebenden Box angezeigt.
  • Schreiben Sie eine schwebende Box, die mit JS und CSS automatisch ausgeblendet werden kann
  • JS realisiert den Floating-Box-Effekt auf der rechten Seite

<<:  So verwenden Sie CURRENT_TIMESTAMP in MySQL

>>:  Leistung des Node+Express-Testservers

Artikel empfehlen

So richten Sie eine automatische tägliche Datenbanksicherung in Linux ein

Dieser Artikel verwendet das Centos7.6-System und...

React-Beispiel, das den Fortschritt des Datei-Uploads zeigt

Inhaltsverzeichnis React-Demo zur Anzeige des Dat...

Prinzipanalyse des UDP-Verbindungsobjekts und Anwendungsbeispiele

Ich habe zuvor zum Einstieg in UDP ein einfaches ...

MySQL Community Server 5.7.19 Installationshandbuch (detailliert)

Link zum Download der ZIP-Datei auf der offiziell...

Schreiben Sie ein MySQL-Datensicherungsskript mithilfe der Shell

Ideen Eigentlich ist es ganz einfach Schreiben Si...

Mehrere Techniken zum Abspielen von Sounds mit CSS

CSS ist der Bereich von Stil, Layout und Präsenta...

So erstellen Sie ein Drag & Drop-Plugin mit benutzerdefinierten Vue-Direktiven

Wir alle kennen die Drag-and-Drop-Funktion von HT...

So verwenden Sie die HTML 5 Drag & Drop-API in Vue

Die Drag & Drop-API fügt ziehbare Elemente zu...

Detaillierte Erläuterung des adaptiven Anpassungsproblems des Vue-Mobilterminals

1. Erstellen Sie ein Projekt mit Vue UI 2. Wählen...