我在寻找解决方案时遇到了麻烦。我正在尝试使用JS(或其他库)来制作它,以便当用户在鼠标滚轮上向下滚动时,页面以与通常相反的方式滚动。
基本上,我希望页面的底部首先显示,并且随着用户滚动,我希望屏幕的顶部向下显示。我能够找到的唯一示例是http://conduit.com/的右列。
我已经建立了一个JSFiddle并提供了一个示例来帮助对其进行可视化。我知道这可能与以下内容有关:
window.scrolltop();
但老实说,我不确定实现此目标的最佳方法。
我希望首先看到标有“ 1”的面板,其余的随着用户滚动而落入视图。
任何有关如何做到这一点的想法将不胜感激。
谢谢
这是解决方案
JS
var winHeight = $(window).innerHeight(); $(document).ready(function () { $(".panel").height(winHeight); $("body").height(winHeight*$(".panel").length); }); window.addEventListener('resize', function (event) { $(".panel").height($(window).innerHeight()); }); $(window).on('scroll',function(){ $(".panelCon").css('bottom',$(window).scrollTop()*-1); });
HTML
<body> <div class="panelCon"> <div id="pane-5" class="panel"> <h1>5</h1> </div> <div id="pane-4"class="panel"> <h1>4</h1> </div> <div id="pane-3"class="panel"> <h1>3</h1> </div> <div id="pane-2" class="panel"> <h1>2</h1> </div> <div id="pane-1" class="panel"> <h1>1</h1> </div> </div> </body>
CSS
body { margin: 0; padding: 0; } .panelCon{ position: fixed; bottom: 0; left:0; width: 100%; } .panel { width: 100%; } .panel h1 { width: 100px; position: relative; display: block; margin: 0 auto; text-align: center; top: 50%; } #pane-1 { background-color: green; } #pane-2 { background-color: red; } #pane-3 { background-color: white; } #pane-4 { background-color: pink; } #pane-5 { background-color: yellow; }