问题标签 [scroll-position]

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 投票
1 回答
228 浏览

ios - 在 ScrollView 中定义位置后更改设备方向时,Swift / SwitUI App 崩溃

如果我之前设置过,当我更改设备方向时,我的应用程序会继续崩溃scrollPosition。我ContentView()看起来像这样 - 我正在读出显示尺寸。

传递displayMainScrollView(), where - 在一个 -ScrollViewReader语句if-else中检查它是否应该加载PortraitMainView()或 `LandscapeMainView()

LandscapeMainView() 和 PortaitMainView() 如下所示:

一切正常,我可以翻转方向,它从LandscapeMainView()PortraitMainView(),反之亦然。此外,scrollPosition在横向和纵向模式下设置一个像魅力一样的作品。只有在我设置 ascrollPosition然后更改方向后,我的设备才会冻结,给我一个Thread 1: EXC_BAD_ACCESS (code=1, address=0x30)作为输出。屏幕仍然显示纵向模式,在横向上倾斜,屏幕的一半是空白的。有没有更好的方法来处理 SwiftUI 中的屏幕方向和滚动视图?

0 投票
1 回答
118 浏览

ios - ScrollToRow - 如何让最后一行滚动到屏幕顶部?

I'm using tableView.scrollToRowinside of the didSelectRowAtmethod so that whenever a row is selected, the view automatically scrolls the next row to the top of the screen. 我让它工作得很好,除了当屏幕上有足够的空间容纳所有东西时,我不确定如何处理最后几行。

在下面的示例中,单击第 5 步之后会显示我正在描述的场景。

例子

这是我的相关代码:

有什么我可以添加到didSelectRowAt(或其他地方)以将最后一行滚动到顶部,即使所有内容都适合屏幕?

0 投票
0 回答
46 浏览

javascript - 如何在元素到达屏幕顶部之前隐藏它?window.onscroll = 函数()

我有以下页面:

  • 我全屏背景图片
  • 向下滚动时带有图片的一些内容
  • 和右下角的菜单(高度为 10vh)

我正在使用执行以下操作的 javascript 函数:当您向下滚动菜单时不显示,但是当您向上滚动内容时,菜单出现在右下角。当您到达顶部的全屏背景图片时,菜单将再次隐藏以不遮挡图片。但是,目前当您到达页面顶部时,您会看到菜单一毫秒,然后再次隐藏。因此,我的问题是:我是否可以交替使用 javascript 函数并告诉菜单在到达全尺寸背景图片之前消失 10vh,这样当我到达页面顶部时,在它消失之前我不会看到它。

这是我正在使用的功能:

当当前滚动为“0”时,查看最后一个“如果”菜单消失,但我宁愿让它在它到达最后一个可能的滚动之前消失(在它到达全屏背景图片之前。)

预先感谢您的帮助。

0 投票
0 回答
39 浏览

flutter - 带有颤振块包丢失滚动位置的分页

在使用flutter_bloc 6.0时,我遇到了一个问题,我用bloc builder包装了脚手架,当新状态时,它的值将被附加到定义的空列表中。很好地附加了新的状态值,但 UI 全部重建并丢失了滚动位置,它转到了初始偏移位置。我该如何正确解决这个问题。

0 投票
1 回答
184 浏览

android - “当用户从适配器转到另一个片段或活动时,在 android Paging 适配器中恢复滚动位置”问题

当我移动到另一个片段时,如何恢复分页适配器项目状态?我尝试了下面的文章,但没有奏效。 https://medium.com/@florina.muntenescu

0 投票
1 回答
344 浏览

flutter - Flutter:保存和恢复列表视图的最后滚动位置不起作用

我需要在应用重启时恢复列表视图中的最后一个滚动位置。我正在使用 listview.builder滚动控制器来保存和恢复偏移量,但 listview 不会滚动到上一个位置并从顶部开始。我什至尝试在共享首选项中保存滚动位置并在应用重启时检索但没有结果。如果有人可以帮助我并使其工作,我将不胜感激。谢谢

0 投票
0 回答
11 浏览

flutter - Flutter - 在纵向和横向模式之间转换滚动位置

我在一个屏幕上有一堆内容,用滚动条和 SingleChildScrollView 包裹。当我翻转手机时,内容中的位置不一样。我如何在不自己摆弄位置值的情况下实现这一目标?

0 投票
1 回答
181 浏览

javascript - 使用 ref 获取组件位置时出错(ReactCannot 读取属性 'getBoundingClientRect' of null")

我想获取技能组件的位置,并在滚动到达该点时添加动画。但是,它返回错误“TypeError:无法读取属性 'getBoundingClientRect' of null”。我跟随试图跟随这个博客,但我不知道我做错了什么。有人可以帮助我吗?

Card.js

技能.js

0 投票
0 回答
101 浏览

javascript - history.scrollRestoration = "manual" 不会阻止 Safari 恢复滚动位置

假设你设置window.history.scrollRestoration = "manual"在一个网页上。

在 Chrome/Firefox 上,每当您单击锚点时,页面都会滚动到链接元素的位置,并且每当您在历史记录中后退/前进时,滚动位置保持不变。
在 Safari 上,无论何时单击锚点都不会发生任何事情,并且无论何时在历史记录中向后/向前导航时,页面都会滚动到链接到当前页面片段 (#sectionXYZ) 的元素的位置。

当我说“浏览历史”时,我的意思是要么使用window.history.back(),要么使用浏览器的后退/前进按钮。window.history.forward()window.history.go(N)

在下面的示例中,您有 2 个按钮(蓝色/红色),单击它们会将 2 个不同的状态推送到历史堆栈中。
尝试并单击它们几次并在历史记录中向后/向前导航以复制我描述的行为。

为什么即使history.scrollRestoration设置为 Safari 也会恢复页面的滚动位置manual
有没有办法像 Chrome 和 Firefox 一样防止这种行为?

0 投票
0 回答
15 浏览

flutter - 滚动时颤动动态边框半径

滚动时是否可以动态更改边框半径?假设容器/弹出面板从半径 50 开始,然后根据滚动位置展开时它变为零。我不确定我在寻找什么关键字。在网络中,它的工作原理与此类似