Heim  >  Artikel  >  Web-Frontend  >  Implementierung der Div-Ebene, die der Bildlaufleiste folgt, basierend auf JavaScript_Javascript-Kenntnissen

Implementierung der Div-Ebene, die der Bildlaufleiste folgt, basierend auf JavaScript_Javascript-Kenntnissen

WBOY
WBOYOriginal
2016-05-16 15:20:221754Durchsuche

Platzieren Sie 2 schwebende Kästchen auf einer Seite. Die schwebenden Kästchen bewegen sich nach oben und unten, während die Seite nach oben und unten scrollt, und werden schließlich an derselben Position fixiert

Die Wirkung zeigt sich wie folgt:

Der Code lautet wie folgt:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JavScript页面悬浮框- 何问起</title><base target="_blank" />
<style>
body {
height: 2000px;
}
#div1 {
width: 100px;
height: 150px;
background: red;
position: absolute;
right: 0;
top:200px;
}
#div2 {
width: 200px;
height: 200px;
background: green;
position: absolute;
left: 0;
top: 200px;
}a{color:white}
</style>
</head>
<body>
<div id="div1"><a href="http://hovertree.com">何问起</a> <a href="http://hovertree.com/texiao/">特效</a></div>
<div id="div2"><a href="http://hovertree.com/h/bjaf/mbrpxe4o.htm">原文</a>
<a href="http://hovertree.com/texiao/jsstudy/1/">效果</a>
</div>
<div id="hovertree" style="position:fixed;top:100px;left:40%;z-index:99;height:100px;width:100px;background-color:silver"></div>
<div>在一个页面放2个悬浮框,悬浮框随页面的上下滚动有上下波动的效果,最终固定在同一位置</div>
<script>
var h_div1 = document.getElementById('div1'), h_div2 = document.getElementById('div2');
var h_hvttop = 200;
window.onscroll = function () {
HoverTreeMove(h_div1, h_hvttop)
HoverTreeMove(h_div2, h_hvttop)
//显示信息
var h_scrollTop = document.documentElement.scrollTop || document.body.scrollTop;//滚动的距离
var h_hovertree = document.getElementById('hovertree'); 
h_hovertree.innerHTML = h_div1.offsetTop + " hovertree<br /> " + h_scrollTop + "<br />" + h_div1.style.top;
};
function HoverTreeMove(obj,top)
{
var h_scrollTop = document.documentElement.scrollTop || document.body.scrollTop;//滚动的距离
var h_buchang = 20;
if (obj.offsetTop < h_scrollTop + top - h_buchang)
{
obj.style.top = obj.offsetTop + h_buchang + "px";
setTimeout(function () { HoverTreeMove(obj, top); }, 80);
}
else if (obj.offsetTop > h_scrollTop + top + h_buchang)
{
obj.style.top = (obj.offsetTop - h_buchang) + "px";
setTimeout(function () { HoverTreeMove(obj, top); }, 80);
}
else {
obj.style.top = h_scrollTop + top + "px";
}
}
HoverTreeMove(h_div1, 200)
HoverTreeMove(h_div2, 200)
</script>
</body>
</html>

Lassen Sie mich einen Code mit Ihnen teilen, der das Div oben auf der Seite korrigiert, sich nicht mit der Bildlaufleiste bewegt und den Browser zur Eingabe von Informationen auffordert

Beispiel 1:

<html>
<head>
<style type="text/css">
#topNavWrapper {
height: 29px;
margin: 0px auto;
min-width:1000px;
z-index:100;
_position: relative ;
_top:0px; 
}
#topNav 
{
width:100%;
display: block;
z-index: 100;
overflow: visible;
position: fixed;
top: 0px; 
_position: absolute;
_top: expression(documentElement.scrollTop-5 + "px");
background-color:#EBEBEB;
border-bottom-style:solid;
border-bottom-width:1px;
border-bottom-color:#D0D0D0;
height: 28px;
min-width:1000px;
}
#top
{
margin: 0px auto;
width:1000px;
position:relative;
} 
.left
{
left:5px;
top:6px;
width:200px;
position:absolute;
}
.leftlx
{
left:205px;
top:6px;
width:300px;
position:absolute;
}
.right
{
left:830px;
top:6px;
width:170px;
position:absolute;
}
#top a
{
text-decoration: none;
color:#747474;
}
#top a:hover
{
color: blue;
text-decoration: underline;
}
</style>
</head>
<body>
<div id="topNavWrapper">
<div id="topNav">
<div id="top">
<div class="left">您好!欢迎来到....^ ^</div><div class="leftlx"><a href="about.aspx&#63;id=1">[联系我们]</a>  客户服务热线: 400-699-1111</div>
<div class="right">
<table cellpadding="0" cellspacing="0"><tr><td><a href="#">简体中文</a></td><td>|</td><td><a href="big5.html">繁体中文</a></td>
<td>|</td><td><a onclick='window.external.addFavorite("http://www.xxxx.com","xxxx")' href="#">收藏本站</a></td></tr></table>
</div>
</div>
</div>
</div>
</body>
</html>

Beispiel 2:

<style type="text/css">
{
margin: 0px;
padding: 0px;
}
body {
background-attachment: fixed; /* prevent screen flash in IE6 */
}
#topNavWrapper {
width: 100%;
text-align: left;
height: 28px;
margin: 0px auto;
z-index:100;
_position: relative ;
_top:0px;
}
#topNav {
width: 100%;
float: left;
display: block;
z-index: 100;
overflow: visible;
position: fixed;
top: 0px; /* position fixed for IE6 */
_position: absolute;
_top: expression(documentElement.scrollTop + "px");
height: 28px;
}
</style>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn