$(document).ready(function(){
var offset = $(window).scrollTop();
if (offset > 600) {
$('.back-to-top').addClass('show');
} else {
$('.back-to-top').removeClass('show');
}
$('.back-to-top').on('click', function(){
$('body').scrollTo(0, {duration: 600});
});
});
在页面往下滚动的时候, $('.back-to-top').addClass('show');
并没有执行
楼上说的没错,换个角度说就是“没监听scroll事件”
逻辑判断写在绑定页面滚动事件中,你现在的逻辑只在页面加载完成后执行一次
什么年代了。
赶紧换成: Element.scrollIntoView
吧。
https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollIntoView
// HERE-------+
// ↓
// ↓
// ↓
$(window).scroll(function(){
var offset = $(window).scrollTop();
if (offset > 600) {
$('.back-to-top').addClass('show');
} else {
$('.back-to-top').removeClass('show');
}
$('.back-to-top').on('click', function(){
$('body').scrollTo(0, {duration: 600});
});
});