使用我当前的代码,我只能有一个或另一个,这是我的粘性导航或从文档顶部出现在100px处的返回顶部按钮。有什么办法可以同时使用吗?
这是我目前的代码
window.onscroll = function() {navFunction()};
var navbar = document.getElementById("navbar");
var sticky = navbar.offsetTop;
function navFunction() {
if (window.pageYOffset >= sticky) {
navbar.classList.add("sticky")
} else {
navbar.classList.remove("sticky");
}
和
window.onscroll = function() {scrollFunction()};
function scrollFunction() {
if (document.body.scrollTop > 100 || document.documentElement.scrollTop > 100) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
function topFunction() {
document.body.scrollTop = 0; // For Safari
document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera
}
抱歉,如果这是一个愚蠢的问题。我还是新手:)
提前致谢!
答案 0 :(得分:1)
您可以在window.onscroll
匿名函数中调用这两个函数:
window.onscroll = function() {
navFunction();
scrollFunction();
};
或者,您可以使用标准addEventListener
方法注册这两个函数:
window.addEventListener("scroll", navFunction);
window.addEventListener("scroll", scrollFunction);
请注意,这样我们不会将括号与两个函数一起使用,因为我们没有执行它们。我们只是告诉事件监听器事件发生时它将执行的函数的名称。
答案 1 :(得分:0)
您可以做的一件事就是重新组织您的代码以调用这两个函数。
// Define the functions and the variables you need first here
// function topFunction() {...} etc
// call both functions inside the scroll event here.
window.onscroll = function() {
scrollFunction();
navFunction()
};
在事件上运行多个函数的另一种方法是使用addEventListener()
window.addEventListener("scroll",scrollFunction,false);
window.addEventListener("scroll",navFunction,false);
您可以随意添加任意数量的功能,但您可能会使网页速度变慢。
答案 2 :(得分:0)
pd.concat(df_list)