Javascript 如何减少和增加滚动上的边距
我想编写javascript代码,在向上滚动窗口时,通过减少页边距顶部(默认值为0)来向上移动文本。但当我向下滚动时,文本顶部的边距不等于0。请帮忙 HTML:Javascript 如何减少和增加滚动上的边距,javascript,margin,Javascript,Margin,我想编写javascript代码,在向上滚动窗口时,通过减少页边距顶部(默认值为0)来向上移动文本。但当我向下滚动时,文本顶部的边距不等于0。请帮忙 HTML: <div id="h"> <div id="t">Hello</div> <div id="content"></div> #h { background:green; width:550px; height:200px; p
<div id="h">
<div id="t">Hello</div>
<div id="content"></div>
#h {
background:green;
width:550px;
height:200px;
position:fixed;
top:0;
padding:50px 0 0 100px;
}
#t {
font-size:40px;
color:white;
}
#content {
background:blue;
width:550px;
height:700px;
margin:200px 0;
position:relative;
}
var pos = 0;
var el = document.getElementById("t");
var m = 0;
window.addEventListener("scroll", function () {
if (window.pageYOffset > pos) {
m -= 1;
el.style.marginTop = m + "px";
} else {
m += 1;
el.style.marginTop = m + "px";
}
pos = window.pageYOffset;
}, false);
JS:
<div id="h">
<div id="t">Hello</div>
<div id="content"></div>
#h {
background:green;
width:550px;
height:200px;
position:fixed;
top:0;
padding:50px 0 0 100px;
}
#t {
font-size:40px;
color:white;
}
#content {
background:blue;
width:550px;
height:700px;
margin:200px 0;
position:relative;
}
var pos = 0;
var el = document.getElementById("t");
var m = 0;
window.addEventListener("scroll", function () {
if (window.pageYOffset > pos) {
m -= 1;
el.style.marginTop = m + "px";
} else {
m += 1;
el.style.marginTop = m + "px";
}
pos = window.pageYOffset;
}, false);
你不需要逐像素添加。您可以直接从scrollTop设置文本边距:
var pos = 0;
var el = document.getElementById("t");
var m = 0;
window.addEventListener("scroll", function () {
el.style.marginTop = -window.pageYOffset/2 + "px";
pos = window.pageYOffset;
}, false);
向我们展示您迄今为止所做的工作。您想解释一下为什么要更改页面滚动条上的文本边距吗?不管怎样,文本都会上升,你的逻辑是什么?既然我是这里的新手,你知道如何在这里发布JSFIDLE链接吗?然后我可以给你看我的代码如果它说后面需要代码,只需将你的代码添加到问题旁边的小提琴链接这里是我所有的代码,请帮助!!最受欢迎的是:如果有帮助,请考虑接受我的回答。(左侧绿色V)JSFIDLE链接已断开。请修理