此代码完美运行,只是它跳过了整个$(window).resize
区域。删除除一个变量外的所有变量似乎可以“修复它”,但这显然行不通。
我在这里错过了一个明显的问题吗?控制台中没有错误。如果您想选择它或查看完整的 javascript,这里有一个演示:http: //jdsn.co/demo/reader.html
if( main_reader_height + offset_height > initviewport ) {
$('.main_reader footer').waypoint(function(event, direction) {
if (direction === 'down') {
$('.nav_items, .nav_prev, .nav_next').addClass('snap');
$(window).resize(function() {
window.offset = $('.main_reader article').offset().top;
window.viewport = $(window).height();
window.main_height = $('.main_reader article').height();
window.bottom_offset = window.viewport - window.offset - window.main_height - 80
$('.nav_next').height(viewport - offset - bottom_offset - 80);
});
$('.snap').height(window.bottom_offset)
}
else {
$('.nav_items, .nav_prev, .nav_next').removeClass('snap');
}
}, {
offset: '100%' // middle of the page
});