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