3
A
回答
1
这不是最终的解决方案,因为我认为动画是不完美的,它只适用于桌面,但它至少可以让你开始。我所做的是在滚动上增加动画的身体高度。
$(document).on('scroll mousewheel', function (e) {
//Check for mousewheel scrolling down (or not used at all)
if (!e.originalEvent || !e.originalEvent.wheelDeltaY
|| e.originalEvent.wheelDeltaY < 0) {
if ($(window).height() + $(this).scrollTop() == $(this).height()) {
//Prevent simultaneous triggering of the animation
if (!$("body").data('bouncing')) {
$("body").height(function (_, h) { return h + 15; })
.data('bouncing', true);
$("body, html").animate({
'scrollTop': '+=15'
}, 125).animate({
'scrollTop': '-=15'
}, {duration: 125, complete: function() {
$(this).height(function (_, h) { return h - 15; })
.data('bouncing', false);
}});
}
}
}
}).on('keydown', function (e) {
//The "down" arrow; still bounces when pressed at the bottom of the page
if (e.which == '40') {
$(this).trigger('scroll');
}
});
1
我一直在玩这个版本,它使用div来模拟效果,该效果在页面底部滑入和滑出视图。如果你有一个高分辨率的显示器,你可能需要增加主分区的高度来测试它。
<div id="main" style="background:#f5f5f5;height:1000px"></div>
<div id="overscroll" style="background:#666666;height:120px"></div>
<script type="text/javascript">
var $doc = $(document);
$doc.ready(function() {
var $wnd = $(window),
$oscroll = $('#overscroll'),
block = false;
$wnd.bind('scroll', function() {
if (!block) {
block = true;
var scrollTop = $wnd.scrollTop(),
wndHeight = $wnd.height(),
docHeight = $doc.height();
try {
if (scrollTop + (wndHeight + 120) > docHeight) {
$oscroll.slideUp('slow');
}
else if ($oscroll.css('display') === 'none'
&& (scrollTop + (wndHeight + 120) < docHeight)) {
$oscroll.slideDown();
}
} finally {
block = false;
}
}
});
});
</script>
相关问题
- 1. 使用javascript上下滚动
- 2. Safari上的强制滚动条
- 3. JavaScript在滚动事件上使用requestAnimationFrame
- 4. 如何在IE上使用CSS定制滚动条宽度?
- 5. Javascript - 设置和控制滚动速度
- 6. 强制Log4Net RollingFileAppender滚动
- 7. 强制UICollectionView停止滚动
- 8. 强制滚动条到底
- 9. 强制窗口高度,javascript
- 10. 如何在元素高度不够时强制滚动
- 11. 使用JavaScript在Selenium上使用JavaScript滚动到网页元素
- 12. 用javascript制作滚动条
- 13. 使用javascript强制在Flash内容上使用wmode
- 14. 在IE8中强制水平滚动条
- 15. 使用JavaScript滚动?
- 16. 滚动使用JavaScript
- 17. 强制滚动条本身停止向上移动(假限制),而div仍在向上滚动。
- 18. 强制在JavaScript
- 19. 在ViewPager上强制动画
- 20. 通过滚动强制停止tableview时调用哪种方法?
- 21. 强制的iframe滚动到通过在Firefox
- 22. 在滚动主体前强制滚动一个div
- 23. 使用纯javascript向上/向下滚动
- 24. 在页面内容上强制滚动条?
- 25. 如何在UITextView上强制水平滚动?
- 26. 强制在网络中使用javascript
- 27. 如何通过JavaScript中的滚动和高度范围限制滚动时按比例缩小元素高度?
- 28. 在移动设备上用捏,缩放和滚动(Pan)强制桌面CSS
- 29. 使用javascript在页面上自动对焦时滚动页面
- 30. 在ListViews上强制Android快速滚动条以在填充内绘制
http://jsfiddle.net/RRyPB/我做了这个的jsfiddle,因为我喜欢它这么多! – 2013-07-22 22:42:26