Wenn die Bildlaufleiste nach unten gezogen wird, bleibt die schwebende Box an derselben Position, hauptsächlich aufgrund 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:
|
<<: So verwenden Sie CURRENT_TIMESTAMP in MySQL
>>: Leistung des Node+Express-Testservers
Was tun, wenn Sie Windows Server 2008R2 vergessen...
1. Problem Mehrere schwebende Elemente können die...
HTML-Absatz Absätze werden durch das Tag <p>...
Ich habe mein Blog seit mehreren Tagen nicht aktu...
I. Erläuterung des strikten Modus Gemäß den Einsc...
Inhaltsverzeichnis Docker-Image herunterladen Sta...
Ich habe bereits einige grundlegende CSS-Selektor...
Inhaltsverzeichnis Allgemeine Entwicklung von Upl...
Vorwort: In einigen früheren Artikeln haben wir h...
Socket-Optionsfunktion Funktion: Methoden zum Les...
· 【Szenenbeschreibung】 Nach HTTP1.1 unterstützt d...
Vorwort Das Docker-Image kann nicht gelöscht werd...
1. Schnittstelle für die Anforderung einer Antwor...
Die Grafikkarte meines Computers ist eine Nvidia-...
Inhaltsverzeichnis 1 Eine kurze Einführung in den...