0

我希望每次从键盘按下键时页面向下滚动我希望页面向下滚动到下一个每次都固定的像素

任何人请帮我怎么做

我想继续在最后一个 div 的每个按键上滚动

http://jsfiddle.net/dhaval17/etfYz/
4

1 回答 1

2

这很简单。

  1. 注册 keydown 事件。
  2. 找出你在哪里。
  3. 根据你所在的位置决定你应该去哪里。
  4. 去那里。

塔达!

[编辑]

这个 js 函数对我有用:

$(document).ready(function() {
  $(document).on("keydown", function(e) {
       if (e.keyCode == 40) { 
           $($(".scrollToMe").get().reverse()).each(function(i, div) {
               var top = $(this).offset().top;
               if (top - $(document).scrollTop() <= 0) {
                    var next = $(this).next(".scrollToMe");
                    if (next) {
                      $('html, body').animate({ scrollTop: $(this).next(".scrollToMe").offset().top }, 'slow');                  
                    }
                    return false;
               }
           });
       }
  });
});

尽管您需要检查上面列表中的第 2 点(您所在的位置),但您总是试图在箭头键下滚动到 ALL/ANY div。然后第 3 点,决定去哪里,在你的简单情况下,它是.next()基于当前顶部的 div。

于 2013-10-02T07:06:06.447 回答