gpt4 book ai didi

javascript - 如何让我的滚动到顶部按钮在滚动后出现

转载 作者:行者123 更新时间:2023-12-01 00:12:54 26 4
gpt4 key购买 nike

我的滚动到顶部按钮工作得很好,但我希望该按钮仅在向下滚动约 20 像素后才出现。我以为我的 javascript 代码有问题,但在网上搜索后,我发现了相同的代码,但它仍然无法工作。相反,滚动 20px 后,该按钮仅在刷新时出现。我仍然不知道问题是什么,但我认为这是因为我使用 PHP Model View Controller (MVC) 框架,因为我创建了一个测试 Html 文件并在那里尝试了相同的代码并且它有效。代码如下:

var scrollTop = document.getElementById("scrollTop");

window.onscroll = function(){
scrollfunction()
};
function scrollfunction(){

if( document.body.scrollTop > 20 || document.documentElement.scrollTop > 20){
scrollTop.style.display = "block";
} else {
scrollTop.style.display = "none";
}
}

scrollTop.addEventListener("click", function(){
window.scrollTo({
left: 0,
top: 0,
behavior: "smooth"
})
})
/*Scroll to top button*/
#scrollTop{
font-size: 380%;
right: 30px;
bottom: 30px;
width: 5%;
height: 10%;
text-align: center;
position: fixed;
border: 1px solid rgb(0, 0, 255);
background-color: rgb(183, 183, 255);
color: rgb(0, 0, 255);
cursor: pointer;
transition: 0.5s;
text-decoration: none;
}
#scrollTop:hover{
background-color: rgb(123, 123, 255);
transition: 0.5s;
}
#scrollTop:active{
background-color: rgb(0, 0, 148);
}
 <p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>
<p>Some default text</p>

<button id="scrollTop">
<i class="fas fa-arrow-up"></i>
</button>

最佳答案

只需将默认的 display:none 添加到您的滚动顶部按钮,使其默认隐藏

其余代码看起来不错

var scrollTop = document.getElementById("scrollTop");

window.onscroll = function(){
scrollfunction()
};
function scrollfunction(){

if( document.body.scrollTop > 20 || document.documentElement.scrollTop > 20){
scrollTop.style.display = "block";
} else {
scrollTop.style.display = "none";
}
}

scrollTop.addEventListener("click", function(){
window.scrollTo({
left: 0,
top: 0,
behavior: "smooth"
})
})
.content{
height:2000px;
}

/*Scroll to top button*/
#scrollTop{
display:none;
font-size: 380%;
right: 30px;
bottom: 30px;
width: 5%;
height: 10%;
text-align: center;
position: fixed;
border: 1px solid rgb(0, 0, 255);
background-color: rgb(183, 183, 255);
color: rgb(0, 0, 255);
cursor: pointer;
transition: 0.5s;
text-decoration: none;
}
#scrollTop:hover{
background-color: rgb(123, 123, 255);
transition: 0.5s;
}
#scrollTop:active{
background-color: rgb(0, 0, 148);
}
<body>
<div class="content">
</div>
</body>

<button id="scrollTop">
<i class=""></i>
</button>

关于javascript - 如何让我的滚动到顶部按钮在滚动后出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59945600/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com