Javascript jQuery如何在到达容器末尾时捕捉到容器
所以这个脚本做了我想做的,只是它没有固定的高度。它仅适用于高度:100%;: 所以我真正想要的是一个插件,当到达div的末尾时,它会自动弹出,因此div可以是任意高度 我的页面的每个div大约为2000px,因此当用户到达div的底部时,如果用户没有足够向下滚动,它会捕捉到下一个部分或当前部分,如插件中所示 感谢你的回答 我会查看插件 当当前部分到达底部时,我将演示更改为快照 如果用户没有滚动到当前节的顶部,则不应捕捉到该节的顶部,因为该节的高度很大,并且您无法看到该节的内容 演示 HTMLJavascript jQuery如何在到达容器末尾时捕捉到容器,javascript,jquery,html,css,jquery-animate,Javascript,Jquery,Html,Css,Jquery Animate,所以这个脚本做了我想做的,只是它没有固定的高度。它仅适用于高度:100%;: 所以我真正想要的是一个插件,当到达div的末尾时,它会自动弹出,因此div可以是任意高度 我的页面的每个div大约为2000px,因此当用户到达div的底部时,如果用户没有足够向下滚动,它会捕捉到下一个部分或当前部分,如插件中所示 感谢你的回答 我会查看插件 当当前部分到达底部时,我将演示更改为快照 如果用户没有滚动到当前节的顶部,则不应捕捉到该节的顶部,因为该节的高度很大,并且您无法看到该节的内容 演示 HTML 您
您好,非常感谢您抽出时间回答。该解决方案的问题在于,它应该在向上滚动时捕捉,并且在两个部分之间时捕捉,无论是向上还是向下,这取决于最接近的部分,如本屏幕所示:-尝试向下滚动到捕捉的部分,然后向上滚动。它应该会重新振作起来。谢谢我先做了一些类似的事情,但这会在本节的任何一点上突然出现,如果你正在阅读内容,这会让你很恼火。所以我需要再看看这个。嗨!非常感谢你!这正是我想要的!:谢谢我只是尝试了不同的高度。。。工作不太好不起作用的是,它只有在到达一个部分的顶部/底部时才会折断。假设从底部/顶部开始偏移量应该是500px左右。因此,如果我到达一个部分的顶部/底部,并滚动通过它小于500px,它应该会捕捉。但是当处于一个区间的中间时,什么都不应该发生。想象一下,当它到达底部时,它会滚动到下一页。再次感谢您抽出时间!有点像这样,除了滚动到元素底部时,它应该捕捉到该元素的底部。我对它做了一点修改:当你滚动到第一个元素的底部,再向下一点,20%的屏幕是黄色部分,80%的屏幕是粉色部分,它应该滚动到粉色部分的底部,而不是回到顶部。你明白我的意思吗?再次感谢!
<section></section>
<section></section>
<section></section>
<section></section>
<section></section>
$('section').waypoint(function(direction) {
if(direction == 'down'){
disable_scroll();
//Animate to top of the section
$('html, body').stop().animate({
scrollTop: $(this).offset().top
},300,"easeInOutQuart", function() {
enable_scroll();
});
}
}, { offset: '100%' });
function preventDefault(e) {
e = e || window.event;
if (e.preventDefault)
e.preventDefault();
e.returnValue = false;
}
function wheel(e) {
preventDefault(e);
}
function disable_scroll() {
if (window.addEventListener) {
window.addEventListener('DOMMouseScroll', wheel, false);
}
window.onmousewheel = document.onmousewheel = wheel;
}
function enable_scroll() {
if (window.removeEventListener) {
window.removeEventListener('DOMMouseScroll', wheel, false);
}
window.onmousewheel = document.onmousewheel = null;
}