3 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊
$(window).scroll(function() {
var scroll = $(window).scrollTop();
//>=, not <=
if (scroll >= 500) {
//clearHeader, not clearheader - caps H
$(".clearHeader").addClass("darkHeader");
}
}); //missing );
另外,通過(guò)刪除clearHeader該類,可以position:fixed;從元素中刪除,并可以通過(guò)$(".clearHeader")選擇器重新選擇它。我建議不要?jiǎng)h除該類,并在其頂部添加一個(gè)新的CSS類以用于樣式設(shè)計(jì)。
如果要在用戶向上滾動(dòng)時(shí)“重置”類添加,請(qǐng)執(zhí)行以下操作:
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll >= 500) {
$(".clearHeader").addClass("darkHeader");
} else {
$(".clearHeader").removeClass("darkHeader");
}
});
編輯:這是標(biāo)題選擇器的版本緩存-更好的性能,因?yàn)樗粫?huì)在每次滾動(dòng)時(shí)查詢DOM,并且可以安全地刪除/添加任何類到標(biāo)題元素而不會(huì)丟失引用:
$(function() {
//caches a jQuery object containing the header element
var header = $(".clearHeader");
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll >= 500) {
header.removeClass('clearHeader').addClass("darkHeader");
} else {
header.removeClass("darkHeader").addClass('clearHeader');
}
});
});

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超2個(gè)贊
它是我的代碼
jQuery(document).ready(function(e) {
var WindowHeight = jQuery(window).height();
var load_element = 0;
//position of element
var scroll_position = jQuery('.product-bottom').offset().top;
var screen_height = jQuery(window).height();
var activation_offset = 0;
var max_scroll_height = jQuery('body').height() + screen_height;
var scroll_activation_point = scroll_position - (screen_height * activation_offset);
jQuery(window).on('scroll', function(e) {
var y_scroll_pos = window.pageYOffset;
var element_in_view = y_scroll_pos > scroll_activation_point;
var has_reached_bottom_of_page = max_scroll_height <= y_scroll_pos && !element_in_view;
if (element_in_view || has_reached_bottom_of_page) {
jQuery('.product-bottom').addClass("change");
} else {
jQuery('.product-bottom').removeClass("change");
}
});
});
添加回答
舉報(bào)