问题标签 [smooth-scrolling]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6078 浏览

java - 黑莓 - 如何实现 ListField 平滑滚动?

概述
我正在使用 listfield 类来垂直显示一组信息。该列表字段的每一行占据屏幕高度的 2/5。

因此,当滚动到下一个项目时(尤其是在显示部分被屏幕高度限制遮挡的项目时),整个滚动/聚焦动作非常跳跃。

我想通过在滚动/焦点操作之间实现平滑滚动来解决这种跳动。ListField 类可以做到这一点吗?

示例
下面是显示当前问题的屏幕截图。

替代文字
(来源:perkmobile.com

一旦用户向下滚动到 ListFieldTHREE 行,该行就会以非常跳跃的方式“滚动”到视图中,没有平滑滚动。我知道减小行高会缓解这个问题,但我不想那样做。

主要问题
如何在 ListField 中平滑滚动?

0 投票
1 回答
8158 浏览

silverlight - Silverlight 3 - ListBox:如何实现平滑滚动和捕捉 MouseDown/MouseUp 事件

我正在尝试根据需要调整 ListBox 的行为,但遇到了几个问题

1)如何以编程方式设置 ListBox 的滚动位置
ListBox 不提供对其内部 ScrollViewer 的访问器,因此您无法将其滚动到任何您想要的位置。

2)如何准确设置垂直滚动(即如何平滑滚动)?
默认情况下,无法通过一次滚动一个完整元素来滚动列表(列表框将始终确保第一个元素完全显示)

这种行为在大多数情况下是可以的,但不是我的:我想要一个平稳的运动......),

WPF 可以解决这个问题,但 Silverlight 没有(请参阅问题“is-it-possible-to-implement-smooth-scroll-in-a-wpf-listview”)。

3) 如何捕获 MouseDown 和 MouseUp 事件:
如果您将 ListBox 子类化,您可能能够捕获 MouseUp 和 MouseMove 事件。但是 MouseUp 事件永远不会被触发(我怀疑它被 ListBox 子元素吃掉了)

0 投票
4 回答
3262 浏览

javascript - 使用 javascript 滚动 HTML 页面?

我创建了一个通过 JavaScript 滚动的页面,但在某些浏览器中,当您向页面发送文本时,它的滚动不是很顺畅?它似乎在 chrome 中根本不起作用。

我的问题是:
使用跨浏览器工作的 JavaScript 创建平滑滚动的 html 页面的最佳方法是什么。

为了了解我想要做什么,这是我制作的测试页面。

0 投票
5 回答
24178 浏览

android - 在 Android 中平滑滚动画布

我是安卓新手。

我正在视图的 OnDraw(Canvas canvas) 方法内的 Canvas 上绘制位图、线条和形状。我正在寻求有关如何实现平滑滚动以响应用户拖动的帮助。我已经搜索但没有找到任何教程来帮助我。

Canvas 的参考似乎是说,如果 Canvas 是从 Bitmap(例如称为 bmpBuffer)构造的,那么在 Canvas 上绘制的任何内容也会在 bmpBuffer 上绘制。是否可以使用 bmpBuffer 来实现滚动......也许将它复制回 Canvas 一次移动几个像素?但是如果我使用 Canvas.drawBitmap 将 bmpBuffer 绘制回移动了几个像素的 Canvas,bmpBuffer 不会被破坏吗?因此,也许我应该将 bmpBuffer 复制到 bmpBuffer2 然后将 bmpBuffer2 绘制回画布。

一种更直接的方法是将线条、形状等直接绘制到缓冲区位图中,然后将该缓冲区(带有移位)绘制到画布上,但据我所知,有各种方法:drawLine()、drawShape()等等不可用于绘制到位图......只能绘制到画布上。

我可以有 2 个画布吗?其中一个将从缓冲区位图构造并仅用于绘制线条、形状等,然后将缓冲区位图绘制到另一个画布上以在视图中显示?

我应该欢迎任何建议!

此处(以及其他网站上)类似问题的答案是指“blitting”。我理解这个概念,但在 Android 文档中找不到任何关于“blit”或“bitblt”的信息。Canvas.drawBitmap 和 Bitmap.Copy Android 的等价物吗?

0 投票
14 回答
58695 浏览

android - Android:如何检测滚动何时结束

我正在使用 GestureDetector.SimpleOnGestureListener 的 onScroll 方法在画布上滚动大位图。当滚动结束时,我想重新绘制位图,以防用户想要进一步滚动......离开位图的边缘,但我看不到如何检测滚动何时结束(用户抬起手指从屏幕上)。

e2.getAction() 似乎总是返回值 2 所以这没有帮助。e2.getPressure 似乎返回相当恒定的值(大约 0.25),直到最后一次 onScroll 调用,此时压力似乎下降到大约 0.13。我想我可以检测到压力的降低,但这远非万无一失。

必须有更好的方法:有人可以帮忙吗?

0 投票
0 回答
953 浏览

android - Android 自定义视图 - Fling 时优化重绘

我有一个自定义视图,它代表像照片拼贴这样的东西。

我需要支持以下内容:

  1. 一扔
  2. 放大
  3. 缩小

这是我目前所做的:

onDraw:

  1. 注意要绘制的图像数量。
  2. 注意要绘制的图像及其位置和角度
  3. 如果图像已下载(从服务器),请绘制它。否则,绘制一些默认图像。

onTouch:

  1. action = DOWN: Record X,Y
  2. action = MOVE: Record X,Y;获取增量;记录“新起源”并使 UI 无效。

这将导致使用最新的图像和坐标重绘 UI。

但是,当图像仍然没有下载用户星星时,这会产生严重的性能问题。

是否可以在投掷过程中拍摄“视图”的“快照”并“平移”“录制的图像”?而当投掷完成后,只需用最新的图像更新用户界面吗?

0 投票
1 回答
4762 浏览

javascript - Ipad/Iphone 喜欢滚动

你们中的任何人有没有看到像允许流体 div 滚动的 javascript 库。我有点想做类似谷歌波浪中的滚动条的事情......但也许不那么烦人。我碰巧喜欢他们,但他们似乎并没有得到那么好的评价。

0 投票
3 回答
885 浏览

jquery - jQuery 移动并加速到未知距离的方向(平滑滚动)

想象一下这段代码(简化)

这将导致这样的事情(来源:aximili at home.exetel.com.au
替代文字

当#rightArrow 悬停时,如何使#wideImage 平滑地向左滚动?

我追求这样的事情

提前致谢!

0 投票
2 回答
912 浏览

javascript - MooTools onLoad SmoothScrolling (Lim Chee Aun 方法)

来自 Lim Chee Un 的帖子:http: //davidwalsh.name/mootools-onload-smoothscroll

我想让页面在页面加载时自动平滑滚动到 URL 中的 # 。

当链接是这样的,即同一页面时,平滑滚动有效:

而不是我需要这样的:

任何人都可以阐明为什么这不起作用?

谢谢

0 投票
12 回答
44669 浏览

vim - 在 Vim 中进行平滑滚动的最佳方法是什么?

Vim 中的主要滚动命令是:

  1. Ctrl-BCtrl- F,以及PageUpPageDown页滚动
  2. Ctrl-UCtrl-D默认滚动半页
  3. Ctrl-YCtrl-E滚动一行

我每次都失去前两者的视觉背景,所以我养成了反复 击打后者( Ctrl-YCtrl- )的坏习惯。E

由于目前没有第一方支持平滑滚动,最不令人反感的解决方法/插件是什么?

我根据任务同时使用 Vim 和 GVim,如果没有一个非常好的 hack 对两者都适用,我很乐意单独定制它们。鼠标滚轮在 GVim 中运行良好,但我正在寻找基于键盘的解决方案。