我有这个'滚动到顶部按钮',在用户向下滚动300px后弹出。到目前为止一切正常。我现在要做的是让这个按钮弹出一个特定的元素。
这是jQuery :
// hide #back-top first
$("#back-top").hide();
// fade in #back-top
$(function () {
$(window).scroll(function () {
if ($(this).scrollTop() > 100) {
$('#back-top').fadeIn();
} else {
$('#back-top').fadeOut();
}
});
// scroll body to 0px on click
$('#back-top a').click(function () {
$('body,html').animate({
scrollTop: 0
}, 800);
return false;
});
});
好的,我接着改变了这一行
if ($(this).scrollTop() > 100) {
到
if ($(this).scrollTop() > '.show-button-here') {
但它不起作用。我有什么想法吗?
这是一个小提琴: http://jsfiddle.net/v70L4buk/
答案 0 :(得分:1)
您需要从页面顶部获取元素的位置,然后在显示向上箭头之前减去您希望该元素到达顶部的距离。在这种情况下,当我在页面中创建的链接从顶部获得300px时,我显示箭头。或者您可以删除数字,当该元素到达视口顶部时,该函数将启动。
if ($(this).scrollTop() > $('.show').offset().top - 300) {
JSFIDDLE: https://jsfiddle.net/gvpLe06c/1/