首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按箭头键时滚动页面内容

按箭头键时滚动页面内容
EN

Stack Overflow用户
提问于 2017-07-18 12:17:35
回答 2查看 2.9K关注 0票数 0

嗨,我想知道如何使我的网页滚动时,箭头键是按下。就像这个页面:http://spacexstats.xyz。Java脚本和jQuery被接受。

谢了伊凡。

EN

回答 2

Stack Overflow用户

发布于 2017-07-18 12:22:04

默认情况下,每个页面都可以使用上下键滚动。

如果您说的是光滑的自定义滚动--您询问的页面使用的是角涡旋插件

有许多lib和插件可以帮助实现类似的用户体验,请考虑使用google实现箭头键上的平滑滚动。

示例库:

票数 0
EN

Stack Overflow用户

发布于 2017-07-18 12:25:22

这是一个angularJS应用程序。他们使用angular-scroll (https://github.com/oblador/angular-scroll)库顺利滚动到页面上的元素。这里是一个小角度的应用程序,它演示了平滑地滚动到页面上的多个元素。

代码语言:javascript
复制
(function() {
  var app = angular.module("soDemo", ['duScroll']);
  app.controller("soDemoController", SoDemoController);

  SoDemoController.$inject = ['$scope', '$document'];

  function SoDemoController($scope, $document) {
    var vm = {
      getContent: getContent,
      scrollTo: scrollTo
    };

    $scope.vm = vm;
    return;

    ////////// IMPLEMENATION ////////
    function getContent(size) {
      return 'blah '.repeat(size);
    }

    function scrollTo(selector) {
      // Note: normally we don't want to interact with the DOM in a controller. A directive is the proper way to do this but for this example we'll let it slide.
      var target = $(selector)[0];
      $document.scrollToElementAnimated(target, 0, 1000);
    }
  }
})();
代码语言:javascript
复制
a {
  color: blue;
  text-decoration: underline;
  cursor: pointer;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-scroll/1.0.2/angular-scroll.js"></script>

<div class="sample" ng-app="soDemo" ng-controller="soDemoController">
  <h1 id="title1">Title 1</h1>
  <a ng-click="vm.scrollTo('#title2')">Go to Title 2</a>
  <p>{{vm.getContent(1000)}}</p>

  <h1 id="title2">Title 2</h1>
  <a ng-click="vm.scrollTo('#title3')">Go to Title 3</a>
  <p>{{vm.getContent(1000)}}</p>

  <h1 id="title3">Title 3</h1>
  <p>{{vm.getContent(100)}}</p>
  <a ng-click="vm.scrollTo('.sample')">Go to Top</a>
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45166585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档